私は、C++プロジェクトと、Interopを使用した最初のメソッドからメソッドを呼び出すC#プロジェクトのソリューションを用意しています。 ハードコードされたパスを避けたいので、私はapp.configでC++ dllのパスを設定する方法を見つけました。 私の問題は、私のC++のDLLは、私のbin/Releaseとbin/Debugフォルダにコピーしなければならない他のDLLに依存しているということです。どうすればこれを避けることができますか? app.configで第三者のDLLへのパスを設定できるといいですね。私はこのサードパーティのC++ dllのコピーを避けるにはどうすればよいですか?
<probing privatePath="bin\DLLs" />
を見つけたが、唯一のアプリケーションのサブディレクトリのために働くようだ 。
ですハードコーディングのパスは、私が言及したように。 インストール中にディレクトリを%PATH%変数に入れるにはどうしたらいいですか?あなたが提供したリンクにヒントがありません。 app.configでパスを指定できますか?それが私の好みの選択肢だろう。 – Ben
私はアプリケーション起動時に(App.Run()の前のProgram.cs内で)AppSettingsReaderで読み込んで、EnvironmentSetEnvironmentVariable()でPATH変数に追加するapp.configのにキーを追加しました。これはまさに私が探していたものです! –
Ben