2

情報を文字列に格納したいプログラムがあります。私はProperties.Setting.Default.STRINGname情報を保存するためにを使用していますが、これはPCで正常に機能し、保存された文字列を確認できます(アプリケーションの設定に移動すると)。しかし、アプリケーションを新しいPCに持っていくと、文字列が失われます。この情報を編集してアプリに保存する方法はありますか?したがって、基本的には、ユーザー設定をアプリケーション設定に変換できる必要がありますが、実行後です。

var settings = Properties.Settings.Default;
        settings.H1 = textbox1.text;
        settings.H2 = textbox2.text;

        settings.Save();
4

3 に答える 3

5

MSDN明示はこれについて何かを言います:

アプリケーションスコープの設定は読み取り専用であり、設計時または.configアプリケーションセッション間でファイルを変更することによってのみ変更できます。ただし、ユーザースコープの設定は、プロパティ値を変更する場合と同じように、実行時に書き込むことができます。新しい値は、アプリケーションセッションの間持続します。Saveメソッドを呼び出すことにより、アプリケーションセッション間で設定への変更を永続化できます。

このため、アプリケーション設定は機能しません。ただし、ユーザースコープの設定を使用している場合は機能しますが、アプリケーションをあるコンピューターから別のコンピューターに変更すると(必要に応じて)、別のマシン(別のユーザースコープ)であるため、設定が失われます。 。

同じ設定を継続する方法があります。少なくとも2つのことができます。

  • ファイルを使用し.configて設定を保存します(これはXMLファイルです)
  • サービスを使用して設定をホストすると、ユーザーがインターネットにアクセスできるかどうかを確認できます

あなたができないことは

  • 実行可能ファイルを1つだけ使用して、コンピューター間で設定を保存します。
于 2012-04-24T19:50:02.330 に答える
0

ユーザー設定はアプリケーション設定とは異なる方法でコンパイルされるため、コンパイル後に変換することはできません。アプリケーション設定でコンパイルしてみませんか?

于 2012-04-24T19:28:14.820 に答える
0

使用しているコードは、ユーザー設定を保存する必要があります。ユーザー設定はユーザーのデータフォルダに保存されることを忘れないでください。アプリがインストールされた構成ファイル(プログラムファイルなど)にはありません。これは通常のパスです。

<Profile Directory>\<Company Name>\<App Name>_<Evidence Type>_<Evidence Hash>\<Version>\user.config

詳細については、このリンクを参照してください

于 2012-04-24T19:32:36.450 に答える