トップ回答者
VB6実行時エラー 「COMDLG32.OCXのファイルがないか不正です」について

質問
-
いつもお世話になっております。
Windows2008Serverにおいて、VisualBasic6で作成したアプリケーションを実行した場合に
以下のメッセージが出力され動作しません。「COMDLG32.OCXのファイルがないか不正です」
状況は以下の通りです。
・COMDLG32.OCX は system32配下に存在する。
・Visual Basic 6.0ランタイムはインストールしている。
・このエラーはWindows2008Serverで常に発生するわけではない。(正常に動作しているマシンもある。)原因や対策方法をご存知の方は、ご教示いただけませんでしょうか。
回答
-
>Visual Basic 6.0ランタイムはインストールしている。
これは拡張ランタイムを既にインストール済みだということでしょうか。
累積の修正プログラムが出ているのでインストールされてみてはいかがでしょうか。
Visual Basic 6.0 Service Pack 6 ランタイム拡張ファイル用の累積的な更新プログラムのロールアップについて
http://support.microsoft.com/kb/957924
-
Windows Server 2008 は 32 ビットですか?64 ビットですか?
(Windows Server 2008 R2 なら 64 ビットです)64 ビットなら System32 フォルダではなく、SysWow64 フォルダに必要になります。
http://www.atmarkit.co.jp/fwin2k/special/win64_02/win64_02_01.html# Windows Server 2008 で確認したわけではありませんが、同じような仕組みが採用されているはずです。
質問スレッドで解決した場合は、解決の参考になった投稿に対して「回答としてマーク」のボタンを押すことで、同じ問題に遭遇した別のユーザが役立つ投稿を見つけやすくなります。
すべての返信
-
>Visual Basic 6.0ランタイムはインストールしている。
これは拡張ランタイムを既にインストール済みだということでしょうか。
累積の修正プログラムが出ているのでインストールされてみてはいかがでしょうか。
Visual Basic 6.0 Service Pack 6 ランタイム拡張ファイル用の累積的な更新プログラムのロールアップについて
http://support.microsoft.com/kb/957924
-
Windows Server 2008 は 32 ビットですか?64 ビットですか?
(Windows Server 2008 R2 なら 64 ビットです)64 ビットなら System32 フォルダではなく、SysWow64 フォルダに必要になります。
http://www.atmarkit.co.jp/fwin2k/special/win64_02/win64_02_01.html# Windows Server 2008 で確認したわけではありませんが、同じような仕組みが採用されているはずです。
質問スレッドで解決した場合は、解決の参考になった投稿に対して「回答としてマーク」のボタンを押すことで、同じ問題に遭遇した別のユーザが役立つ投稿を見つけやすくなります。