shell戻り値


ともみ  2007-11-09 07:02:04  No: 99668

以前のものから、、、
Private Sub Command1_Click()
  Dim mhWnd As Long
  Dim proID As Long
  Dim mEnd As Long
     mhWnd = Shell(Text1.Text, vbNormalFocu)
     proID = OpenProcess(PROCESS_QUERY_INFORMATION, 1, mhWnd)

      Do
        GetExitCodeProcess proID, mEnd
        DoEvents
      Loop While mEnd = STILL_ACTIVE

      CloseHandle proID
      
      Unload Me
End Sub

proID の値は、実行毎にかわるのでしょうか?
proID が正常かどうかの判断は、'0'でよいのですか?


matsu  2007-11-09 21:00:23  No: 99669

>proID = OpenProcess(PROCESS_QUERY_INFORMATION, 1, mhWnd)
>proID の値は、実行毎にかわるのでしょうか?
>proID が正常かどうかの判断は、'0'でよいのですか?

http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/jpdllpro/html/_win32_openprocess.asp
戻り値
関数が成功すると、指定したプロセスの、既に開いているハンドルが返ります。
関数が失敗すると、NULL が返ります。拡張エラー情報を取得するには、GetLastError 関数を使います。

となっていますので、0以外が正常となります。


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

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






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