2
目前与WMI的Win32_Process的, 我似乎无法检测到,如果一个批处理文件,目前正在运行如何使用WMI发现正在运行的批处理(.bat)文件名?
所有它列出的CMD.EXE的的CommandLine,没有告诉我具体的CMD.EXE运行该批处理文件。 有人有任何见解吗?
代码片段(红宝石WMI)
many_args = 'batch_file.bat'
procs = WMI::Win32_Process.find(:all)
procs.each{|proc|
if (proc.CommandLine.contain?(many_args)) || proc.Name.include?(many_args) # never succeeds
...
end
}
我真的很喜欢这个代码 - 如果你有一个test.cmd运行她的窗户 ex: contents bash -c'sleep 1000' 还是什么不? -r – rogerdpack 2010-01-07 21:42:57
我所做的只是将test.cmd作为唯一的命令暂停。它在我的机器上为我工作。 Windows XP - 红宝石1.8.6。它不适合你吗? – Beanish 2010-01-08 03:25:44
有趣。它对.cmd有效,但不适用于.bat [?] 甜 - 至少我有一个命名所有.bat文件.cmd的工作:) -r – rogerdpack 2010-01-08 21:31:01