WindowsXP でVSの Visual Basic コンパイラを32ビット=x86用に設定する

|

前回、VBコンパイラが規定値の"任意のCPU"設定だった事もあり、Windows7でもネイティブ(64ビット)動作となってしまいましたので、今一だったなぁ~と。

そこでWindowsXPのVisualBasicは、32ビットでコンパイルする様にIDEの設定を変更してみました。

マイクロソフトのドキュメントによると、

・構成マネージャーを使用して、対象プラットフォームを指定
・プロジェクトのプロパティを使用して、対象CPUを指定

などが有るようですが、構成マージャーには新規作成や編集などの作業が必須の様なので、面倒くさがり屋には不向きです。という事で、プロジェクトのプロパティを使用して、対象CPUを指定してみる事に。

・メニューバーの「プロジェクト」をクリック→プルダウンメニューの「(プロジェクト名)のプロパティ」を選択、または、
ソリューションエクスプローラの「プロジェクト名」を"右"クリック→プルダウンメニューの「プロパティ」を選択して、プロパティのダイアログを表示します。


1.プロジェクトの「プロパティ」画面で、「コンパイル」を選択し、「詳細コンパイルオプション」ボタンをクリック

VBプロジェクトのプロパティ画面


2.「コンパイラの詳細設定」画面で、「ターゲットCPU」の内容を確認

コンパイラの詳細設定画面で内容確認

・32ビットでコンパイル出来る様に、「AnyCPU」を「x86」に変更します


3.「コンパイラの詳細設定」画面で、「ターゲットCPU」の変更内容を確認

コンパイラの詳細設定画面で内容変更


コンパイラの対象CPU指定をx86に変更して Windows7 64Bit 版で動作確認したところ、WOW64配下で動作する事を確認できました。
2つの関数の取得データには、wProcessorArchitecture/lpMaximumApplicationAddress/dwProcessorType に違いがみられました。

・やはりCPU情報を詳しく知りたい場合には、GetNativeSystemInfo 関数の方が優れているようです。


お試し環境
  WindowsXP 32bit Edition、Windows7 64bit Edition
  Visual Basic 2008 対象CPUはx86


/*-------------------------------- お試し結果 ------------------------------*/

・GetSystemInfo 関数の取得データ

WOW64下 GetSystemInfo 関数の取得データ

・GetNativeSystemInfo 関数の取得データ

WOW64下 GetNativeSystemInfo 関数の取得データ

/*----------------------------------------------------------------------------*/


/*-------------------------------- お試しソース ----------------------------*/

前々回の「32ビットOS下のVisualBasicからGetSystemInfo関数を呼び出す」記事のソースと同じです。

/*----------------------------------------------------------------------------*/

/*----------------------------------------------------------------------------*/
/*============================================================================*/

このブログ記事について

このページは、微禄が2021年10月 4日 08:39に書いたブログ記事です。

ひとつ前のブログ記事は「WOW64下のVisualBasicからGetNativeSystemInfo関数を呼び出す」です。

次のブログ記事は「VB作成のプログラム動作がWOW64配下かどうか、IsWow64Process関数で確認」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

ウェブページ

お気に入りリンク

NOP法人 アジアチャイルドサポート 最も大切なボランティアは、自分自身が一生懸命に生きること