タグ

2015年9月16日のブックマーク (1件)

  • 64bitアプリと32bit DLLの混在 - misc.log

    意外に実験したことが無く、結構即答で答えられない質問だったのでしらべてみました。 64bit用に対象アーキテクチャをx64としてビルドされた.NETのアプリケーションから、32bit用、即ちx86用としてビルドされたアセンブリを参照して実際に動かせるのか?という実験。 サンプルプログラム 以下の構成で簡単なサンプルをVisual Studio 2010のVB.NETで作成しました。 親EXEを作成。フォーム1つ、DLLから文字列をもらってラベルに表示。 文字列をPublic Sharedで公開しているだけのDLL。 上記DLLはプロジェクト参照でEXEプロジェクトから参照される。 このプログラムで、EXEとDLLそれぞれの「ターゲットCPU」を切り替えて動作を見てみます。 結果 こんな感じ。 呼び出し側(EXE側) 呼ばれる側(DLL) ビルド 64bit OSでの動作 x86 x86 成

    64bitアプリと32bit DLLの混在 - misc.log
    uhyorin
    uhyorin 2015/09/16
    検証ありがとうございます!って言わせてくれ。.Net2アプリ(AnyCPU)とと32bitDLL(x86)をWindows Server 2012 R2に持ってきて動かなかった。ターゲットCPUの設定がエラーになるパターンだった…。