コンパイルすると動かない事があります。
レジストリ情報を取得するFunctionがあるのですが、コンパイルしないでVBから実行するとうまく動きます。
コンパイルすると動く場所と動かない場所が出てきます。
レジストリ情報取得Functionには引数が渡っておりますが、コンパイルしたEXEで実行すると、EXEの場所によっては「パラメーターが違います」というエラーがでまうす。
取得しているAPIはRegQueryValueExです。
このFunctionに入る前にMSGBOXを一つ表示(こんにちわ)してあげると、コンパイルしてもどこでも正常に動きます。
上のがわかりにくいので簡単に説明すると
レジストリ書き込みFunction
↓←①
レジストリ取得Function
・レジストリAの情報をRegQueryValueExで取得
・レジストリBの情報をRegQueryValueExで取得
です。①の部分になにもいれないと
VBからの実行→正常
コンパイルEXE実行→EXEの場所により異常
①の部分にMSGBOXを入れると
VB、コンパイルEXEともに正常動作
です。何が原因か全くわかりません。どなたかお願いします。
ツイート | ![]() |