
お世話になります。
VS2015を使用しておりC#のプログラムを作ろうとしております。
その中でC++で作成したx64対応のDLLを呼び出そうとしているのですが、
呼び出し側のExeのプラットフォームが「AnyCpu」だと読み込みエラーとなります。
自分で調べたところ「OSが64ビットであれば64ビットのプロセスとして動作する」
とのことなのですが、私の環境(Windows10Pro 64bitOS x64ベースプロセッサを使用)で
デバッグをしてみると「AnyCpu」では32bitとして実行されているようなのです。
※INTPTR.Sizeプロパティが4で返却されるので間違いないと思います。
「AnyCpu」の特性が良く分かっていないのですが、64bitOSで32bitとして実行されるのは
デフォルトがどこかで設定されているからでしょうか?
また、「AnyCpu」指定でExeを作ろうとするのであれば、その中でネイティブのDLLなど
x64固定でビルドされているものは呼び出せないでしょうか?
(常に相方のx86ビルドされたDLLを探しているのでエラーとなるのかと考えています)
今後32bitOSでExeを起動することはないので、DLLのビルド方式がx64なのは問題ないのですが、
「AnyCpu」が指定されているExeの中で上記DLLが呼び出せないので非常に困っています。
長文となりましたが、どんなことでも良いのでご存知の情報を頂けないかと思っています。
どなたか詳しい方のご協力をお願いします。
No.1ベストアンサー
- 回答日時:
C# で AnyCPU で作成したアプリケーションを 64bit 環境で実行したときに 32bit で実行されるって話ですかね。
C# アプリケーションのソースを Visual Studio で開き、プロジェクトのプロパティで [ビルド] の 「プラットフォーム ターゲット」 の下にある「32ビットを優先」にチェックが入っているとか。
これにチェックが入っていると、32bit で動かせる場合は 32bit となるようです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
「タイプ初期化子が例外をスローしました」エラー何?
Visual Basic(VBA)
-
CloseとDisposeの違い
Visual Basic(VBA)
-
アプリを32bitから64bit移行
C言語・C++・C#
-
-
4
.NETアプリを作ったときの .manifest ファイルって必要なの
C言語・C++・C#
-
5
regsvr32で登録された一覧を知りたい
UNIX・Linux
-
6
64bit環境で32bitのodbc参照
C言語・C++・C#
-
7
フルパスから最後のディレクトリ名を取得したい。
Visual Basic(VBA)
-
8
【C#/Java?】try-catchでcatchせずにfinallyは一般的?
その他(プログラミング・Web制作)
-
9
VB2005 DataGridView上でクリックを無効にする方法はありますか?
Visual Basic(VBA)
-
10
DoEventsがやはり分からない
Visual Basic(VBA)
-
11
ActiveXコントロールを.NETにインポートできない???
C言語・C++・C#
-
12
VB.NETで、DLLを頂いたんですが・・
Visual Basic(VBA)
-
13
外部依存関係について
C言語・C++・C#
-
14
regsvr32.exe による DLLの登録について
UNIX・Linux
-
15
ODP.NETのバージョン確認
Oracle
-
16
VB.NET Oracle接続 32、64bit
Oracle
-
17
有無、要否、賛否、是非、可否、当否…これらの言葉について
その他(教育・科学・学問)
-
18
Form_Load と Form_Activate のタイミング
Visual Basic(VBA)
-
19
VB.NETでフォーム上にExcelのような表を表示する方法
Visual Basic(VBA)
-
20
C# Process.Startメソッドで複数引数を渡したい
その他(プログラミング・Web制作)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
excel vbaから実行するexe実行...
-
「読み込み違反」が起きたとき...
-
CreateFile が ERROR_PATH_NOT_...
-
Visual Studio 「AnyCpu」について
-
エスケープ・シーケンスによる...
-
VB.NetのWinsockについて
-
Matlabを実行しやすくする方法
-
意味不明の実行時エラーで困っ...
-
VB.NETで参照設定したDLLの修正...
-
Product Codeの変更法は?
-
VBAでArrayListを使う為の「msc...
-
VB.NET(2017)で インストーラを...
-
VB.NETでSPREADの設定方法
-
プリンターのトレイの数を取得
-
Designer.vbは直接コードをいじ...
-
VB6で呼び出し元の情報を取得す...
-
vba 時間の引き算 例えば 15:00...
-
ドットプリンタでバーコードの印刷
-
ExcelCreatorについて
-
IT初心者です 仕事で、vb.netで...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
excel vbaから実行するexe実行...
-
Visual Studio 「AnyCpu」について
-
「読み込み違反」が起きたとき...
-
Windows PowerShellでC言語を実...
-
Format 関数のバグ?
-
C++初心者です。 debug asserti...
-
VB6.0 exe作成時に実行時エラー...
-
結果が見れない~
-
mscorlib.dllの初回例外について
-
C#VB、exeに埋め込んだexeの実行
-
一通ずつ処理したい(アウトル...
-
外部exe呼び出しの方法 ShellEx...
-
VB6 EXEとプログラムの違い
-
C言語に詳しい人に質問です。
-
ActiveDirectoryから値を取得
-
ActiveX → VB を起動するとCre...
-
JP1/File Transmission Server/...
-
ACCESSランタイムでエラー
-
MFCと.NETFramework
-
androidで.exeを実行できますか?
おすすめ情報