场景:我想检查给定的进程是否正在运行,如果是,则等待它关闭。如何使用WMI在Perl中查找当前用户的进程
我的Perl脚本使用WMI-> Win32_Process来获取正在运行的进程列表。我能找到正在运行的进程与下面的代码
my $objWMIService = Win32::OLE->GetObject("winmgmts:\\\\localhost\\root\\CIMV2");
my $sqry = "SELECT * FROM Win32_Process where Name = \"$processName\" ";`
其中$processName
在脚本中设置。
上面的代码在桌面上运行良好,但代码在终端服务器中以不同的方式工作,因为它上面的代码选择了其他用户的运行进程。
问题:如何在上述查询中添加用户名/ ID过滤器?有没有简单的方法来获得当前用户的过程?
您应该向我们展示'$ processName'是如何设置的。也许它变得更清楚你想要做什么。 –
您正在使用哪个WMI模块?听起来像'DBD :: WMI'。 – Borodin
'$ processName'是我的应用程序名称..因为参数的缘故,我们可以将它保留为outlook.exe – KK99