VBでコンパイルした時のエラー


アサシ  2003-02-21 02:27:49  No: 106092

コンパイルすると動かない事があります。

レジストリ情報を取得するFunctionがあるのですが、コンパイルしないでVBから実行するとうまく動きます。
コンパイルすると動く場所と動かない場所が出てきます。

レジストリ情報取得Functionには引数が渡っておりますが、コンパイルしたEXEで実行すると、EXEの場所によっては「パラメーターが違います」というエラーがでまうす。

取得しているAPIはRegQueryValueExです。

このFunctionに入る前にMSGBOXを一つ表示(こんにちわ)してあげると、コンパイルしてもどこでも正常に動きます。

上のがわかりにくいので簡単に説明すると

レジストリ書き込みFunction
↓←①
レジストリ取得Function
    ・レジストリAの情報をRegQueryValueExで取得
    ・レジストリBの情報をRegQueryValueExで取得

です。①の部分になにもいれないと
VBからの実行→正常
コンパイルEXE実行→EXEの場所により異常

①の部分にMSGBOXを入れると
VB、コンパイルEXEともに正常動作

です。何が原因か全くわかりません。どなたかお願いします。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加