プロジェクトの[設定]タブを使用して作成され、次のようにアクセスすることによって設定値が作成されたファイルを含むクラスライブラリがある場合app.config
(理想的ではないことはわかっていますが、しばらくお待ちください):
Public Shared Function GetMySetting(key As String) As String
Dim value As String = My.Settings.Item(key)
If value = String.Empty Then value = "Setting " & key & " not found."
Return value
End Function
次に、次のようにアプリケーションから設定を取得します。
sb.AppendLine("GetMySetting: " & Library.Settings.GetMySetting("SettingC"))
ライブラリ プロジェクトの app.config ファイルの設定は、アプリケーションの app.config ファイルに確実にコピーされませんがMy.Settings
、ライブラリから取得することはできますapp.config
。
そこでGetConfigFileName
、ライブラリに関数を追加しました:
Public Shared Function GetConfigFileName() As String
Return AppDomain.CurrentDomain.SetupInformation.ConfigurationFile
End Function
アプリケーションでそれを取得しました:
sb.AppendLine("Library Config File: " & Library.Settings.GetConfigFileName)
しかし、それはアプリケーションの構成ファイルを返します。
ライブラリが My.Settings... を呼び出すときにどの .config ファイルから読み取っているのかを特定するにはどうすればよいですか?
それとも、DLL にコンパイルされますか?