DOSコマンド使って、プロセスが既に起動しているかチェックするコードを書いたのだけれど、
コマンドの戻り値がうまく返ってきません。(「echo %ERRORLEVEL%」の)
以下のコードだと、メモ帳が起動してなければ1が返ってくるはずなんですが、
起動していなくても0が返ってきてしまいます。
コマンドプロンプトではきちんと返ってきました。
tasklist | find "notepad.exe"
echo %ERRORLEVEL%

書き方がわるいのでしょうか・・・

//DOSコマンドの実行
// ファイル名とコマンドの定義
Dim sFilename, sCmd, sCmd2
sFilename = "notepad.exe" //メモ帳
sCmd = "tasklist | find <#DBL>" + sFilename + "<#DBL>"
sCmd2 = "echo %ERRORLEVEL%" //起動してないときの戻り値=1
// コマンドの実行
DOSCMD(sCmd)
isNotLaunch = DOSCMD(sCmd2)
//プロセスが起動されているか判定
If isNotLaunch = 1 then
Print "プロセスが起動されていません" //起動してない
Else
Print "既にプロセスが起動されています" //起動してる
Endif
Print sCmd
Print isNotLaunch
Sleep(3)