プログラム中でエディタを起動し、その終了を待って次の処理をする。
ということがしたいのですが、下記のコードで、家のデスクトップ(Vista Home SP2)
や会社のノート(XP Home SP)では、期待通りに動作するのですが、会社の別の
ノート(Vista Home SP2)ではエディタの終了を待たずに次の処理に移ってしまい
ます。
コード: 全て選択
Dim sei As SHELLEXECUTEINFO
sei.cbSize = SizeOf( SHELLEXECUTEINFO)
sei.fMask = SEE_MASK_NOCLOSEPROCESS
sei.hwnd = hMainWnd
sei.lpVerb = "Open"
sei.lpFile = pFileName
sei.lpParameters = ""
sei.lpDirectory = ""
sei.nShow = SW_SHOWNORMAL
ShellExeWait= ShellExecuteEx( sei)
’WaitForInputIdle( sei.hProcess, 5000) '起動待ち※いれても効果無し
While WaitForSingleObject( sei.hProcess, 1000)= WAIT_TIMEOUT '終了待ち
Wend
起動もしていないのにWaitForSingleObjectのループを抜けてしまいます。
原因が全くわからず行き詰まっています。どなたかアドバイスをお願いします。
AB5.0 CP3
Vista Home SP2[/code]