簡體   English   中英

如何正確獲取Unicode窗口標題

[英]How to get Unicode window title correctly

我創建了Win32控制台應用程序,該應用程序執行簡單的任務:它枚舉所有窗口的標題。 除了一點點以外,其他所有內容都運行良好-“非英語”標題將作為“ GDI +窗口”返回。

我不知道如何以正確的方式檢索此類字幕。

例如,我有一個帶標題的窗口:HelloМир。 但是,GetWindowTextW返回“ Hello GDI + Window”

有我的程序代碼(簡體):


    BOOL CALLBACK nextWindow ( HWND window, LPARAM param )
    {
        int i = GetWindowTextW ( ... );
        wprintf ( ... );
        return true;
    }

    int main ()
    {
        WNDENUMPROC func = &nextWindow;
        LPARAM someValue = 0;

        BOOL result = EnumWindows ( func, someValue );
        return 0;
    }

有我的項目設置: Visual Studio項目設置

謝謝!

謝謝大家,您最有幫助!

就我而言,我只需要使用以下代碼來更改翻譯模式:

_setmode ( _fileno ( stdout ), _O_U8TEXT );

請參閱Michael S. Kaplan的文章中的更多詳細信息。

問題解決了。

暫無
暫無

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

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