少々無理矢理ではありますが、C++/CLIのコードを32/64bit両方で動作させることができました。
ポイントは以下の2点
- C ランタイム ライブラリ(CRT)を使用しないコードを生成する。
参考:http://d.hatena.ne.jp/ak11/20070313/p1- CorFlags.exeを使用し、作成したコードの32BIT フラグをクリアする。
例: >CorFlags.exe lib_vc.dll /32BIT-
この操作で、32/64bitどちらでも動作するAny CPUのコードが作成できました。
無理矢理ではあるので何らかの弊害があるかもしれません。
あと、C ランタイム ライブラリ(CRT)を使用しないコードで参考にしたページにもあったように
制限もいろいろあるようです。
結局のところ、ネイティブコードを混在させないのであれば、
C++/CLIを使わずに最初からC#で書けということでしょうか・・・
投稿者 NMVL : 2008年4月11日 00:23