2012-05-23 73 views
2

我tryied找到進程句柄,
C++找到進程句柄沒有FindWindow函數

HWND handle = FindWindow(0 ,TEXT("window title")); 

我需要的窗口標題
比方說,我有絲束的流程與同一個標題
,所以我想作出這樣的:

for each p as process in process.getProcessByName("notepad") 

if process.processname = "notepad" then 

handle = p.handle 

exit for 

end if 

next 
+0

http://msdn.microsoft.com/en-us/library/windows/desktop/ms686832(v=vs.85).aspx – chris

+0

我需要類似getProcessByName –

+1

您可以通過使用這些函數進行枚舉並檢查名稱。 – chris

回答

0

你必須列舉, e正在運行的流程自己手動查找名稱。您可以使用以下任一方法:

1)CreateToolhelp32Snapshot(),Process32First()Process32Next()。見MSDN中的示例:

Taking a Snapshot and Viewing Processes

2)EnumProcesses()OpenProcess()EnumProcessModules()GetModuleBaseName()。請參閱MSDN中的示例:

Enumerating All Processes

3)使用WMI來枚舉Win32_Process集合中的項目。