Winmgmts创建进程IE返回错误的进程ID vbscript

时间:2018-08-22 11:28:21

标签: windows instrumentation createprocess

我正在尝试获取使用winmgmts create方法和processID属性创建的进程的进程ID。但是看起来它让我得到了错误的进程ID。你能帮忙吗?

注意:当计算机上已经运行iexplore.exe时,就会发生这种情况。如果是新启动的,它将获得正确的进程ID。

Set objWMIService = GetObject("winmgmts:" & "impersonationLevel=impersonate}!\\.\root\cimv2")
Set objStartup = objWMIService.Get("Win32_ProcessStartup")
Set objConfig = objStartup.SpawnInstance_
objConfig.ShowWindow = 1 'SW_NORMAL

Set objProcess = objWMIService.Get("Win32_Process")
intReturn = objProcess.Create("C:\program files\internet 
explorer\iexplore.exe", Null, objConfig, intProcessID)

Set objWMIService = GetObject("winmgmts:\\.\root\CIMV2")
query = "SELECT ProcessId FROM Win32_Process WHERE ProcessId='" & 
intProcessID & "'"

Set colItems = objWMIService.ExecQuery(query, , wmi_flags)

For Each objItem In colItems
    intProcessID = objItem.ProcessID
Next

但是我在intProcessID中获得的进程ID与在任务管理器中看到的不同,并且该进程似乎已经终止。有没有办法为IE获取正确的进程ID?这会产生一些子进程并终止吗?你能帮忙吗?

关于, 加内什。

0 个答案:

没有答案