Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Switching between Visual Studio instances
#8
Here is how to get command line and other properties of all processes.
Macro Macro1557
Code:
Copy      Help
def wbemFlagReturnImmediately 16
def wbemFlagForwardOnly 32
int IFlags = wbemFlagReturnImmediately|wbemFlagForwardOnly
IDispatch objWMIService._getfile("winmgmts:")
IDispatch colProcesses = objWMIService.ExecQuery("SELECT Name,ProcessId,ExecutablePath,CommandLine FROM Win32_Process",@,IFlags)

IDispatch objProcess
foreach objProcess colProcesses
,int pid=objProcess.ProcessId
,str name=objProcess.Name
,if(!pid or name~"System") continue
,str path=objProcess.ExecutablePath; err path=""
,str cl=PathGetArgs(objProcess.CommandLine); err cl=""
,cl.trim("''")
,out "------------[]name: %s[]path: %s[]pid:  %i[]cl:   %s" name path pid cl

This code gets only commandlines of devenv.exe processes.
Macro Macro1558
Code:
Copy      Help
def wbemFlagReturnImmediately 16
def wbemFlagForwardOnly 32
int IFlags = wbemFlagReturnImmediately|wbemFlagForwardOnly
IDispatch objWMIService._getfile("winmgmts:")
IDispatch colProcesses = objWMIService.ExecQuery("SELECT ProcessId,CommandLine FROM Win32_Process WHERE Name='devenv.exe'",@,IFlags)

IDispatch objProcess
foreach objProcess colProcesses
,int pid=objProcess.ProcessId
,str cl=PathGetArgs(objProcess.CommandLine)
,cl.trim("''")
,out cl


Messages In This Thread

Forum Jump:


Users browsing this thread: 1 Guest(s)