$1 的 Windows 模擬(最後啟動進程的 PID)

$1 的 Windows 模擬(最後啟動進程的 PID)

如何使用 WScript.Shell 或類似工具取得最後啟動程序的 Windows PID?

我知道如何啟動一個進程並獲取其 PID:

Set oExec = WshShell.Exec( program )
Set pid = oExec.ProcessID

現在的問題是該程式是另一個批次(或者可能是 VBScript)。該批次啟動一個我想要獲取 PID 的真實程式。

在 Linux(shell 腳本)上這很容易做到。只是pid=$!

但在 Windows 上我能做什麼呢?

答案1

我認為沒有相當於$!在 Windows 中。

如果您希望檢索第三個進程的 PID,可以使用 WMI 進行搜尋。可以找到這樣的例子這裡(僅搜尋並顯示資訊)或這裡(搜尋並終止進程)。

如果第三個名稱的可執行檔未知,您可能需要使用作業對象它將多個進程分組為一個物件。你可以輕鬆地一次殺死所有的人終止作業對象

微軟軟體定義網絡快速概覽或StackOverflow 上的這個問題

但是,我不知道這些方法是否可以在 VBScript 中使用。

相關內容