VC编程中FindWindow函数的用法

2011-04-16 17:27:45|?次阅读|上传:wustguangh【已有?条评论】发表评论

关键词:C/C++, 操作系统|来源:唯设编程网

如果lpClassName指针指向字符串,它就给定了窗体的类名称。类名称可以是RegisterClass或RegisterClassEx注册的任意名称,或者是任何预先定义好的控件类名称。

If lpClassName is NULL, it finds any window whose title matches the lpWindowName parameter. 

如果lpClassName是空指针,函数将按照lpWindowName参数搜索所有窗体。
lpWindowName

[in] Pointer to a null-terminated string that specifies the window name (the window's title). If this parameter is NULL, all window names match. 

[输入]一个以零作为终结符的字符串指针,给定窗体名称(标题)。如果这个参数是空指针,函数搜索时将忽略窗体名称。
Return Value
函数返回值

If the function succeeds, the return value is a handle to the window that has the specified class name and window name.

如果函数执行成功,返回值是一个给定的窗体类名称和窗体名称的窗体句柄。

If the function fails, the return value is NULL. To get extended error information, call GetLastError. 

如果函数执行失败,返回值为零。执行GetLastError函数获得更多的错误信息。 

3.  看懂了MSDN就知道了这个函数是查找父窗体句柄的。

比如现在你这个帖子的IE浏览器窗体,它的窗体类名称是"IEFrame",窗体名称就是"百度_vb吧_想问问findwindow(api)的具体用法! - Microsoft Internet Explorer"。

所以现在这个窗体的句柄就这样来获得:

hwnd=FindWindow("IEFrame",
    "百度_vb吧_想问问findwindow(api)的具体用法! - Microsoft Internet Explorer")
HWND h=FindWindow(NULL,"我的程序");  

这样就得到了当前桌面上窗口标题为“我的程序”的窗口的窗口句柄,如果你不知道你要找的窗口的标题,只知道窗口的类名  ,那么把上面的那行代码的第一个参数   NULL该成类名,把后面的哪个参数改成NULL就OK了

CWnd*   pWnd=CWnd::FindWindow(NULL,"天网防火墙个人版");  
HWND   hwnd=pWnd->GetSafeHwnd();
<12>
发表评论0条 】
网友评论(共?条评论)..
VC编程中FindWindow函数的用法