VB6.0をwin8 64ビット対応にするには?


けんけん  2013-03-27 22:37:15  No: 103426  IP: [192.*.*.*]

業務で利用しているVB6.0を64ビット対応にしたいと思っています。
.netへの移行も含めて、具体的にどうすれば64bit対応になるのでしょうか?

編集 削除
魔界の仮面弁士  2013-03-28 11:02:02  No: 103427  IP: [192.*.*.*]

> 業務で利用しているVB6.0を64ビット対応にしたいと思っています。

64bit版の VB6 はありません。

16bit用には VB1〜VB4、
32bit用には VB4〜VB6 を使います。

ただし VB6 製アプリを 64bit版 Windows 上で実行させることは
可能です。この場合は WOW64 での動作となります。

あるいは Office 2010, 2013 の 64bit 版を導入することで、
VBA の 64bit バージョンを使うこともできます。


> .netへの移行も含めて、
.NET の場合は、Visual Studio 2005 以降を採用すれば、
64bit向けのアプリケーションを構築することもできます。

コンパイルするときに「x86 ビルド」にすれば 32bit 専用アプリ、
「x64 ビルド」にすれば 64bit 専用アプリになります。
そして「AnyCPU ビルド」を選択した場合は、実行環境に合わせて
32bit/64bit 両対応のアプリケーションになります。


> 具体的にどうすれば64bit対応になるのでしょうか?
・まずは 64bit 環境を入手しましょう。環境が無いとテストもできません。
・各種コンポーネント(ActiveX、.NET、ODBCドライバ等々)の類は、
  多くの場合、32bitと64bitとで、それぞれ異なるランタイムが
  必要とされます。一部のコンポーネントにおいては、64bit版の提供が
  行われていないものもありますので、くれぐれも事前調査を忘れずに。
・Program Files や System32 フォルダ、レジストリキーなども
  変更されます。固定のパス文字列を使っていたり、インストーラーを
  使わずに配布している場合は、見直しが必要になるかと思います。
・ポインタのサイズが変わるため、APIを使ったコードは見直しが必要です。
  特に VBA の場合、32bit向けAPIコードは64bit環境では動きません。
・インターネット等で拾える API サンプルコードには、32bit 向けの物に
  なっていることが多く、そのままでは 64bit対応できない場合も
  あります。サンプルを利用する場合には対応環境もご確認ください。

編集 削除