タイトル | : 64bitOSでのCreateObject |
記事No | : 15437 |
投稿日 | : 2012/02/22(Wed) 20:42 |
投稿者 | : マカロニ |
いつも参考にさせていただいております。 マカロニと申します。
目的としては「Windows7 64bit版」でVB6のexeを動かしたいのです。
作業の流れとしては下記の通りです。 @ WindowsXP端末でプログラム A ディストリビューションウィザードでパッケージ化 B AのパッケージをWinsows7にて展開 C 実行
上記の通り実行すると Cで実行エラー'429'になります。
ソースの流れは↓の通りです。 ***************************************************************
Public WithEvents WinSockControl As MSWinsockLib.Winsock
Private Sub Form_Load()
MsgBox ("このメッセージはテストです(始)") Set WinSockControl = CreateObject("MSWinsock.Winsock.1") ←★ MsgBox ("このメッセージはテストです(終)")
End Sub
***************************************************************
★部分で実行エラー'429'となる事が判りました。
試した事 ・32bit版のregsvr32で登録 cd windir\syswow64 regsvr32 mswinsck.ocx ・互換モードで実行 exeを【右クリック】【プロパティ】で互換性モード(XP SP3)で実行 ・古いOCXが残っている可能性があるので 一度 regsvr32 /u mswinsck.ocx で削除してもう一度登録し直す
他には判らなかったのでここまでしかできていません。
ディストリビューションウィザードで環境作った時 SysWow64にmswinsck.ocxが登録されるので 【32bitアプリ】―【64bitOS】の互換性が 問題なのでは?と目星はつけて いるのですが、この後の対策がわかりません。
回答いただけたら幸いです。 よろしくお願い致します。
アプリ作成端末 Windows XP 32bit版 SP3
アプリ実行端末 Windows 7 64bit版 SP1
VB暦 3ヶ月
|