駄文日記

駄文日記 そこは自己満足の空間

動画大好き!猫吸血鬼(ディフリス)の日記。このページをアンテナに追加 RSSフィード
Pの意味はプロデューサー?プログラマー?

Twitter @deflis / プロフィール@iddy

0000 | 00 | 01 |
2008 | 01 | 02 | 03 | 04 | 06 | 08 | 09 | 11 |
2009 | 01 | 04 | 05 | 09 |
2010 | 01 | 04 | 05 | 07 |
2011 | 02 |
2012 | 05 | 06 |

2009-05-30

[]64bit版Windowsで32bitアンマネージドなDLLを呼び出している.NETアプリケーションを64bit環境できちんと動かす方法 03:16

参考:http://yamuyam.com/2009/01/visualstudio-build-any-x86-x64/

.NET Framework SDKに入ってる「http://msdn.microsoft.com/ja-jp/library/ms164699.aspx:CorFlags」を使う。

Visual Studio 200x コマンド プロンプトを起動して

C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC>corflags 32Bitアンマネージドな.exe /32BIT+

という感じのことをすればおk

たまに署名されてるEXEに適用しようとすると

corflags : error CF012 : The specified file is strong name signed. Use /Force to force the update.

というようなエラーが出るので言われた通り/Forceをつけて

C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC>corflags 32Bitアンマネージドな.exe /32BIT+ /Force

とやればおk

まぁnwhoisで読み込みとかやろうと思ったら64bitで棒読みちゃんが動かなかったのでそのためにやったんですけどね。

2010/1/14 追記

けっこうGoogle検索で来る方が多いので開発者の方向けに。

VisualStudioの設定でプラットフォームを「AnyCPU」から「x86」にすれば上記のことをほぼ自動でやってくれますので

ちなみにnwhoisや棒読みちゃんは改善してくれています。作者達に感謝

トラックバック - http://d.hatena.ne.jp/deflis/20090530/1243707361

pv:52790

Copyright (C) 2008 Deflis. All Rights Reserved.