簡體   English   中英

如何從HWND句柄獲取可讀的類名和標題? 在WinApi c ++中

[英]How to get readable classname and title from HWND handle? in WinApi c++

我使用以下enumchild proc獲取每個窗口的hwnd,問題是我無法以某種方式檢測每個hwnd的任何信息,所以我可以做我想要的那些被檢測為我需要的那些。

例如,我怎么能得到窗口類名稱和enum bellow中每個窗口的標題?

我試過像...

編輯:復制粘貼(如果有幫助)

TCHAR cName[MAX_PATH];

BOOL CALLBACK EnumChildProc(HWND hwnd, LPARAM lParam) {


 TCHAR cName[MAX_PATH];
 GetClassName(hwnd, cName, _countof(cName));
  cout << cName << endl;

     return TRUE; 
}

int _tmain(int argc, _TCHAR* argv[])
{


    HWND hwnd = FindWindow(0, TEXT("reference"));
    EnumChildWindows(hwnd, EnumChildProc, 0);

    system("PAUSE");
 return 0;
}

它只返回十六進制句柄信息,並且每次都相同,GetClassName func不應該每次都將cName更改為新句柄嗎?

另外GetClassName函數返回寫入cName的字符數,我真的不知道這對我有用嗎? 我需要以一些可讀的格式獲取我的cName,這樣我就可以做類似的事情

if(className == TEXT(“classnameiamlookingfor”&& hwndtitle = TEXT(“thetitlethatinterestsme”)DOSOMETHINGWITHIT();

但我得到的只是十六進制混亂。

是不是Unicode構建?

再次檢查以下內容:

TCHAR className[MAX_PATH];
GetClassName(hwnd, className, _countof(cName));
_tprintf(cName);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM