2013-08-12 47 views
19

我有一个进程获取特定PID的问题, 这个进程的问题在于它是一个隐藏进程,它不显示在任务管理器/ PowerShell中,完全隐藏。通过窗口句柄查找进程ID

我所做的远远是这个过程的主窗口句柄,问题是,我怎样才能得到它的pid。我想要做的是读取此过程的内存并编辑它,但不能这样做没有PID我猜(因为我需要得到它的基地址在内存中)。

因此,如果任何人有任何解决方法或对我来说,这将是伟大的。

P.S:此进程不会显示在Process.GetProcesses()中。

ty!

+0

你需要进程ID ...吗? – Aravind

回答

7

您将需要使用P /与Windows API调用。

声明一个函数在您的类像

[DllImport("User32.dll")] 
static extern uint GetWindowThreadProcessId(IntPtr hWnd, out uint lpdwProcessId); 

,然后把它在你的类。

请参阅PInvoke

+0

从pinvoke.net得到它,但你是对的! –

+0

这一个实际上返回0,不为我工作,但感谢您的回应。 –