2011-12-21 14 views
4

特定のDLLが第2のDLLの特定のバージョンを参照するとき、そのDLLは動作します。しかし、2番目のバージョンが参照されているバージョンよりも新しい場合、両方のライブラリを使用している私のライブラリプロジェクトは警告を発します:DLLリファレンスを別のバージョンの2番目のDLLにする方法はありますか?

警告1同じ依存アセンブリの異なるバージョン間で競合が見つかりました。

そして、FxCopの状態:間接参照NationalInstruments.Commonアセンブリ、バージョン= 9.0.40.362、カルチャニュートラル、PublicKeyToken = = dc6ad606294fc298 "が見つかりませんでした。

は15 CA0060警告。このアセンブリは分析に必要ではありませんが、分析結果が不完全な場合があります。このアセンブリは次のように参照されました:SimpleReadWrite

これらの警告が解決されるまで、他のプロジェクトでは私のライブラリを参照することはできません。私は私のSimpleReadWriteプロジェクトで

  • NationalInstruments.NI4882.dll

を使用しようとしているが、NationalInstruments.NI4882は

  • NationalInstruments.Common.dll v9.0.40.362
  • を参照します

と新しいバージョン(9.1.40.159)しか見つかりませんでした。この問題を解決するには?ここで

+0

は私が正しくあなたを理解していましたが - 1つのプロジェクトから同じDLLの2つのバージョンを同時に参照したいですか?どのように名前の衝突に対処するつもりですか? –

+0

@Docいいえ私はそうではありません。私は単一のバージョンを使用したい、問題は、私はバージョンが必要ではないが、新しいものが必要です。回避策はありますか? –

+0

申し訳ありませんが、私はあなたを取得しません。ソースコードを持つ "SimpleReadWrite"プロジェクトがあるので、任意の参照を変更することができ、NationalInstruments.Common.dll v9.1.40.159を使用してコンパイルすることができます。これは手元にある唯一のバージョンです。問題はどこで起こるのですか?または、ソースとして "SimpleReadWrite"をDLLとしてのみ持っていますか? –

答えて

3

http://digital.ni.com/public.nsf/allkb/46DE00265283A71586256FC000797682

一緒に属するバージョンでうまくいけば2つのDLLを再インストールする必要がありますインストールを修復する方法の説明です。

本当にこの前のSOの記事を読んで、(おそらく動作しませんどの)一緒に、これらのDLLをミックスしようとする場合、それは必要な手順を説明します

Upgrade a reference dll in a C# project without recompiling the project

+0

私はどちらの解決策も働かせることができませんでした。 –

+0

私は3番目のソリューションを作成しました。私は 'ildasm' NationalInstruments.Common.dllが登場したすべての場所でバージョンを変更し、再度' ilasm'しました。しかし、私はそれを動作させることはできませんでした。 –

+0

@XMLforDummies:推奨したようにベンダーに連絡しようとしましたか?あなたの時間は、おそらく混ざり合わないものを一緒にミックスしようとするのではなく、その仕事にもっとよく投資されるでしょう。 –

関連する問題