- - PR -
構成ファイルの参照
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2004-10-04 14:55
-------------------------------------------------------
[OS]Windows2000 Professional SP4 [VS]VisualStudio.NET2003 [言語]VB.NET ------------------------------------------------------- 構成ファイルの参照に関する質問です。 現在、「コンソールアプリ」と「Windowsアプリ」の 両方から使用されるライブラリ(DLL)を作成しています。 ライブラリ中で使用するアプリ固有情報(パスやファイル名等)を 構成ファイルにもち、引数やグローバル変数を使用せずに ライブラリ中でその値を参照したいのですが、 ライブラリから直接構成ファイルを参照する方法はありますでしょうか? 要するに、両アプリから使用されるライブラリで参照するアプリ固有情報を 構成ファイルにて一元管理したいということです。 ライブラリ中でConfigurationSettings.AppSettingsを使用しても 参照はできませんでした。 ご存知の方がいましたらご教授ください。 よろしくお願いします。 |
|
投稿日時: 2004-10-04 15:30
試してみたところ、問題なく構成ファイルの設定にアクセスできました。
できないとは、どうできなかったのでしょうか? 値がNullになるとか・・・。 アプリごとに構成ファイル名は異なってくるんで、両方から参照される構成ファイルの内容が同じなってないとか・・・。 は考えられませんか? |
|
投稿日時: 2004-10-04 17:06
言葉足らずですみません。。。
自分が試した方法は、 ==================================================================== -------------------------------------------------------------------- [ライブラリ] Imports System.Configuration Public Class Class1 Public Shared Sub SampleClass() MsgBox(ConfigurationSettings.AppSettings("PATH")) End Sub End Class -------------------------------------------------------------------- [コンソールアプリ] Imports ClassLibrary1 Module Module1 Sub Main() Class1.SampleClass() End Sub End Module -------------------------------------------------------------------- [Windowsアプリ] Imports ClassLibrary1 Public Class Form1 Inherits System.Windows.Forms.Form #Region 略 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Class1.SampleClass() End Sub End Class -------------------------------------------------------------------- [構成ファイル] <?xml version="1.0" encoding="utf-8" ?> <configuration> <appSettings> <add key="PATH" value="C:\Tmp" /> </appSettings> </configuration> -------------------------------------------------------------------- ==================================================================== というサンプルを作成して、構成ファイルの作成場所を変えて実行してみた結果が、 それぞれ次の通りとなりました。 (構成ファイルはVSの"新規項目の作成"の「アプリケーション構成ファイル」で プロジェクトに追加しています) 【構成ファイル作成場所】 1.[コンソールアプリ]に作成 ・コンソールアプリ実行:OK ・Windowsアプリ実行:NG 2.[Windowsアプリ]に作成 ・コンソールアプリ実行:NG ・Windowsアプリ実行:OK 3.[ライブラリ]に作成 ・コンソールアプリ実行:NG ・Windowsアプリ実行:NG どこか1個所に構成ファイルを作成して、それを両アプリから見れればOKなのですが。 >できないとは、どうできなかったのでしょうか? >値がNullになるとか・・・。 上記の確認方法でMsgBoxに値が表示されなくなります。 具体的に何が入っているのかはわかりません。 正直、ライブラリのデバッグの仕方がわかりません・・・(無知ですみません^^;) 情報が足りなければ、またご指摘ください。 |
1