エディタの終了を待つ

ActiveBasicでのプログラミングでわからないこと、困ったことなどがあったら、ここで質問してみましょう(質問を行う場合は、過去ログやWeb上であらかじめ問題を整理するようにしましょう☆)。
メッセージ
作成者
Ko

エディタの終了を待つ

#1 投稿記事 by Ko »

お世話になります。
プログラム中でエディタを起動し、その終了を待って次の処理をする。
ということがしたいのですが、下記のコードで、家のデスクトップ(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
ShellExecuteEx・WaitForSingleObjectの戻り値は正常で、エディタが
起動もしていないのにWaitForSingleObjectのループを抜けてしまいます。
原因が全くわからず行き詰まっています。どなたかアドバイスをお願いします。

AB5.0 CP3
Vista Home SP2[/code]
HSAB

#2 投稿記事 by HSAB »

openproccess()ではだめなのけ?