隐藏“进程监视器”应用程序窗口
|
我正在创建一个计划任务,以最高特权运行进程监视器。我有一个Windows服务,该服务在启动时执行计划的任务。因此,在我开始服务时,将在一个窗口中显示进程Monitor.exe。但是我不想看窗户。我只希望进程monitor.exe在后台运行而不显示任何窗口。
在AutoIT中,有一个命令:
Run (Procmon.exe,\"\",@SW_Hide) @SW_Hide = Hidden Window
我尝试了这个:
foreach (Process pr in Process.GetProcesses())
{
if(pr.ProcessName == \"procmon\")
{
hWnd = pr.MainWindowHandle.ToInt32();
ShowWindow(hWnd, SW_HIDE);
}
}
没有找到相关结果
已邀请:
3 个回复
弓萍功
。然后只需将其
属性设置为
,就应该注意这一点。 我自己还没有尝试过,但这是直接调用WinApi函数时通常采用的方式。 http://msdn.microsoft.com/zh-CN/library/system.diagnostics.processstartinfo.windowstyle.aspx http://msdn.microsoft.com/zh-CN/library/system.diagnostics.processwindowstyle.aspx
晤默报
调用ShowWindow来隐藏它。 您可以使用FindWindow获取ProcMon窗口的窗口句柄。 编辑: 看完您的代码后,我尝试了一下,它可以与以下代码一起使用:
您的代码最有可能出现的问题是,您正在尝试查找与之不完全匹配的进程名称。
肉簧咸缮