私は、社内で使用されているプログラムを作成します。私は、私が多くのプロジェクトで参照するいくつかのサポートDLLを作成しました。 (例えば、一般的なデータアクセスヘルパー) すべてのプログラムディレクトリに "datatools.dll"のコピーを持っているのではなく(デフォルトの動作であるようです)、私は多くのプログラムから参照できる1つのコピーを持っていたいと思います。私自身のsystem32ディレクトリのようなもの。VS展開プロジェクトで共有DLLを参照する
プロジェクトに「参照パス」を追加しました。私はプロジェクトとその後のプロジェクトをコンパイルします。インストーラは正常に動作します。共有DLLは参照パスにあります。 しかし、プログラムを実行するとエラーが発生します。 "System.IO.FileNotFoundException:ファイルまたはアセンブリ 'datatools.dll、Version = 1.0.0.0、Culture = neutral、PublicKeyToken = null'またはその依存関係の1つを読み込めませんでした。システムは、指定されたファイルを見つけることができません。" datatools.dllをexeと同じフォルダに移動すると、プログラムは問題なく実行されます。
共有DLLを作成して共有場所を使用することはできますか? これはちょっと悪い考えですか?
お返事ありがとうございました。私はVS2k8を使用しています。私はSignオプションを見て、あなたとYuliyは言いましたが、それが私の頭の上にあることを恐れています。 私は、ユーザーのマシンに複数のコピーを置いています。 – mohnston
私はそれに署名しなくてもいいのかどうかわかりませんか?私は、これらの一般的なDLLは、私のアプリケーションのフォルダではなく、隔離されたフォルダにある必要があることを意味します。 DLLの中には、独自のdllではないものがあります。そのため、sigingは問題です。 – Denish
最後の解決策があるかどうか私にmohnstonを教えてください – Denish