ユーザーがさまざまなファイルの種類をアプリケーションに関連付けることができる MDI Windows フォーム アプリケーション (.net 2008) があります。私は現在、次のようなレジストリ エントリでこれを行っています。これにより、アプリケーションはコマンド ライン経由でファイル名を読み込んでアクセスします。
Registry.SetValue(appKey & "\shell\open\command", "", """" & _
System.Windows.Forms.Application.ExecutablePath & """ ""%1""")
アプリケーションのプレ .net バージョンでは、DDE (レジストリの ddeexec) を使用しました。Windows エクスプローラーでファイルをダブルクリックしたときにアプリケーションのインスタンスが実行されていた場合、アプリケーションの新しいインスタンスを起動せずにファイルを開きます。
DDE が Microsoft によって廃止されたので、アプリケーションの新しいインスタンスを開始するのではなく、実行中の MDI アプリケーションがエクスプローラーでファイルをダブルクリックしたときに追加のファイルを開くための .net での最良の方法は何ですか?