
お世話になります。
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)
-
.NETアプリを作ったときの .manifest ファイルって必要なの
C言語・C++・C#
-
64bit環境で32bitのodbc参照
C言語・C++・C#
-
-
4
アプリを32bitから64bit移行
C言語・C++・C#
-
5
ActiveXコントロールを.NETにインポートできない???
C言語・C++・C#
-
6
VB2005 DataGridView上でクリックを無効にする方法はありますか?
Visual Basic(VBA)
-
7
CloseとDisposeの違い
Visual Basic(VBA)
-
8
VB.NET DataGridView 縦スクロールバーを常に表示
Visual Basic(VBA)
-
9
CStringからchar*への型変換について教えてください。
C言語・C++・C#
-
10
有無、要否、賛否、是非、可否、当否…これらの言葉について
その他(教育・科学・学問)
-
11
regsvr32で登録された一覧を知りたい
UNIX・Linux
-
12
VB.NETでフォーム上にExcelのような表を表示する方法
Visual Basic(VBA)
-
13
VB.NETで、DLLを頂いたんですが・・
Visual Basic(VBA)
-
14
外部依存関係について
C言語・C++・C#
-
15
【C#/Java?】try-catchでcatchせずにfinallyは一般的?
その他(プログラミング・Web制作)
-
16
データベースのINT型項目にNULLはNG?
MySQL
-
17
VB.NETで小数点以下の桁数を取得したい
その他(ソフトウェア)
-
18
svnでファイル移動すると履歴がついてこない
その他(コンピューター・テクノロジー)
-
19
visual studio2019でデバッグができません
Visual Basic(VBA)
-
20
Groupboxの配下のコントロール名を確認したい(その逆も有り)
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAでコマンドプロンプトを呼び...
-
C++初心者です。 debug asserti...
-
JP1/File Transmission Server/...
-
Windows PowerShellでC言語を実...
-
matlabで作成したdllをVBAで使...
-
excel vbaから実行するexe実行...
-
一通ずつ処理したい(アウトル...
-
VBにてDLLをデバックする方法。
-
VB.net(WEB)プログラムのPDFフ...
-
androidで.exeを実行できますか?
-
Visual Studio 「AnyCpu」について
-
VC++2010でのエラー
-
Eclipse CDT MinGWによるC言語
-
VBAでArrayListを使う為の「msc...
-
VBAでIEが起動しているか...
-
vbaでPDFファイルが印刷されない
-
意味不明の実行時エラーで困っ...
-
CreateProcessのエラー
-
exeファイルを実行するとすぐに...
-
Designer.vbは直接コードをいじ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
excel vbaから実行するexe実行...
-
Windows PowerShellでC言語を実...
-
C++初心者です。 debug asserti...
-
「読み込み違反」が起きたとき...
-
Visual Studio 「AnyCpu」について
-
JP1/File Transmission Server/...
-
(msvcr71d.dll) でハンドルされ...
-
mscorlib.dllの初回例外について
-
androidで.exeを実行できますか?
-
VB6.0 exe作成時に実行時エラー...
-
VBコンソールアプリケーション...
-
ActiveDirectoryから値を取得
-
Eclipse CDT MinGWによるC言語
-
ACCESSランタイムでエラー
-
matlabで作成したdllをVBAで使...
-
VBで「ファイル名を指定して実...
-
外部exe呼び出しの方法 ShellEx...
-
VB6 EXEとプログラムの違い
-
CreateFile が ERROR_PATH_NOT_...
-
ActiveX → VB を起動するとCre...
おすすめ情報