特定のディレクトリ(C:\Program Files\NetworkGame3\api\
)で実行されているコンソールアプリケーション(NGameHost
)があります。それはそのディレクトリで利用可能なファイルを使用し、コンソールアプリケーションは単独で実行するとうまく動作します。また、DLL(および設定ファイルなどの他のファイル)をそのディレクトリから使用するさまざまな方法も公開しています。これらのメソッドを呼び出して結果を返そうとする別のコンソールアプリケーション(別の場所にあります)があります。 Copy Local: False
を設定して、ローカルバージョンを作成するのではなく、そのディレクトリ内で実行するようにしました。しかし、私は "ファイルまたはアセンブリを読み込めませんでした...またはその依存関係の1つを読み込めませんでした。システムが指定されたファイルを見つけることができません"というエラーが表示されます。別のディレクトリにあるDLLファイルを呼び出す
別のディレクトリにあるコンソールアプリケーションからメソッドを呼び出すにはどうすればよいですか?
あなたはDLLを含むディレクトリへのフルパスを使用する必要があります。プログラムはそれを単独で見つけることができません。既定の検索順序には、ハードディスク上のランダムなディレクトリは含まれません。 –
参照を含めると、プロパティセクションに正しい完全なパスがあります。私はそれがパスを知っているので、それはちょうどそのアセンブリを起動すると私はローカルコピーを使用しないように言ったと思った。 – XSL
コンパイル中にMSBuildがアセンブリをローカルディレクトリにコピーするかどうかだけに影響するHasanの答えは、 'Copy Local'についてです。これは、実行時にアセンブリを配置するアプリケーションとは関係ありません。 –