Windows シェルと統合された C# アプリを開発しようとしています。このため、sharpshell ライブラリを使用しています。私は同じプロジェクトで直接sharpshellライブラリを使用しており、コンテキストメニューを処理するための専用クラスを作成しています。もともと私は、コンテキストメニューのクリックイベントに次のコマンドをリンクしました:
System.Diagnostics.Process.Start(path, _command.ToString() + "|" + string.Join("|", SelectedItemPaths));
そしてシステムは機能していました。現在、次のコードを使用して、Click イベントから Program.Main クラスの新しいインスタンスを直接開始しようとしています。
DmsDrive.Program.Main(new string[] { _command.ToString() + "|" + string.Join("|", SelectedItemPaths) });
インスタンスは機能しており、適切に起動します。問題は、この方法を使用してプロセスを開始すると、プログラムが app.config を Windows ディレクトリで検索するようになることです (メインの現在のドメインは explorer.exe プロセスです)。このため、app.config が読み込まれず、wcf サービスへのコントラクトが機能しません。
どうすればこれを処理できるか知っていますか? または、Process.start メソッドを引き続き使用する方がよいでしょうか?
よろしく。