2012-04-11 103 views
0

我需要獲得一個窗口線程ID在運行時創建與此代碼獲得從窗口

System.Windows.Window MyWindow = new System.Windows.Window(); 
MyWindow.Show(); 

我得到使用

IntPtr WindowHandle = (new WindowInteropHelper(MyWindow)).Handle; 

我怎樣才能獲得窗口處理線程ID從窗口或其相應的處理程序的線程ID?

+0

重複:http://stackoverflow.com/questions/1679243/c-net-how-to-get-the-thread-id-from-a-thread? – 2012-04-11 13:36:03

+0

我不懷疑你需要線程,但我很好奇你爲什麼認爲你需要線程ID。我可以想象你不需要它,並且有更合適的API調用來做你真正想做的事情。 – sethcall 2012-04-11 13:38:50

+0

Darkshadw:不重複,因爲我沒有從新窗口中的線程 – 2012-04-11 13:41:23

回答

0

GetWindowThreadProcessId方法

看一看根據MSDN

檢索線程的創建指定 窗口標識符和,可選地,創建該 窗口的過程的標識符。

+0

有沒有什麼辦法來檢查我是否得到正確的ID?因爲第三方DLL沒有做什麼應該做的事情 – 2012-04-11 13:50:50