0

System.Diagnostics.Process.Start( "notepad.exe", "text.txt"); と書くとわかります。特定のファイルがメモ帳で開きます。.xml のような特定の拡張子を持つすべてのファイルをメモ帳で開きたいと思います。私はC#で作成されたプログラムを持っています。プログラムはファイルを参照でき、ダブルクリックするとデフォルトのプログラムウィンドウセットで開きます。今、私はそのデフォルトのプログラムを変更したくありません。メモ帳ですべての .xml プログラムを開くためのコードを書きたいだけです (プログラムがオンになっている間のみ)

4

3 に答える 3

3

そのような直接的な方法はありません。アプリケーションを起動するたびに、レジストリ「I think something under HKEY_CLASSES_ROOT」を更新して、必要なプログラム「notepad」でそのファイル拡張子「xml」を開くようにします。プログラムが終了する前に、そのデフォルトプログラムを再割り当てします。ただし、プログラムが正常に終了しない場合、デフォルトは以前に設定したとおりになります。

于 2011-08-03T10:35:55.723 に答える
2

これらの手順に従うことでこれを達成できますが、これらの手順を機能させるには、レジストリにアクセスできる必要があります

  1. まず、現在のマシンのxmlファイルのデフォルトのアプリケーションを取得 し、アプリケーションの開始時にグローバル変数に格納します(つまり、通常は、アプリケーションのメインフォームが読み込まれるときです)。
  2. 次に、レジストリ内のxmlファイルのデフォルトのアプリケーションをメモ帳またはその他の任意のアプリケーションに変更します
  3. これで、メモ帳をXMLファイルを開くためのデフォルトのアプリケーションとして設定しました。
  4. アプリケーションを終了するときに、グローバル変数に保存したデフォルトのアプリケーションを最初のステップからレジストリにリセットしてください。
于 2011-08-03T10:39:19.043 に答える
0

ええ、私はそれを少し解決します。だから私はファイルを開いたときからパスを取りました. ,ファイルへのパス);

出来た。

于 2011-08-05T05:04:50.360 に答える