0

次のコード行があります。

MsgBox(ConfigurationManager.AppSettings.Get("Path"))

そして app.config ファイル内でこの xml:

<appSettings>
    <add key="PATH" value="myPath"/>
</appSettings>

次に、ソリューションをデプロイし、それ (exe ファイルと xml-config ファイル) を appdata-roaming パスに保存します。

C:\Users\<username>\AppData\Roaming\<solutionname>

ダブルクリックで実行すると、メッセージボックスに「myPath」という値が表示されます。自動起動で実行するように設定してマシンを再起動すると、マッサージボックスが空 (null) になります。自動起動時に config-xml ファイルを読み取れないのはなぜですか?

4

1 に答える 1

1

このドキュメントConfigurationManager.OpenExeConfigurationを見ることを検討してください

それは言います:

クライアント アプリケーションは、すべてのユーザーに適用されるグローバル構成、個々のユーザーに適用される個別の構成、およびローミング ユーザーに適用される構成を使用します。userLevel 値は、開かれている構成ファイルの場所を決定します。これは、ユーザー レベルがない (構成ファイルがアプリケーションと同じディレクトリにある) か、ユーザーごとのレベルがある (構成ファイルは、ユーザー レベル タイプによって決定されるアプリケーション設定パスにあります) かを示します。

これが関連しているかどうかはわかりません(ダブルクリックすると機能するとおっしゃっていたので)。しかし、試してみても害はありません。

于 2013-02-06T09:19:03.727 に答える