1

COMコンポーネントを使用する.NETアプリケーションがあります。アプリケーション自体は「任意のCPU」ですが、COMコンポーネントには32ビットと64ビットのバージョンがあります。

記事http://msdn.microsoft.com/en-us/magazine/cc188708.aspxは、登録なしのCOMをどうするかについて明確に説明しています。しかし、何をすべきか:

  • 「任意のCPU」アプリ
  • 依存アセンブリ:
  • Assembly1はCOMコンポーネント「Foo」を使用します。fooには同じファイル名の32ビットバージョンと64ビットバージョンがあります(Fooは作成していません。サードパーティによって作成されました)。

動作する1つの方法は、32ビットリリース用と64ビットリリース用に別々のアプリマニフェストを作成することです。このようにして、各マニフェストファイルにCOMコンポーネントの正しいサイズとハッシュを含めることができます。ただし、これは避けたいと思います。

どういうわけか、これをVisual Studioで面倒なく設定することは可能ですか?アプリケーションが両方のプラットフォームをシームレスに実行する単一のフォルダー(COMコンポーネント用のx64、x86サブフォルダー)を持つことは可能ですか?

正しい方向へのポインタは大歓迎です!単純なスイッチを見落としているか、どこかに設定しているだけです。

4

1 に答える 1

0

ProcessorArchitecture要素を使用すると、<assemblyIdentitiy>特定のを記述できます。それらのうちの2つを追加します。1つは「x86」を使用し、もう1つは「amd64」を使用します。これは、この(非常に貧弱な)MSDNライブラリの記事に記載されています。

于 2010-03-11T12:44:45.857 に答える