2013-08-12 89 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,不爲我工作,但感謝您的迴應。 –