【问题标题】:What's the difference between RealGetWindowClass and GetClassName? (or what is a "Window type" versus a "Window class name"?)RealGetWindowClass 和 GetClassName 有什么区别? (或者什么是“窗口类型”与“窗口类名”?)
【发布时间】:2009-02-04 04:50:25
【问题描述】:

MSDN上的描述有区别,但是我不明白文字是什么意思,区别是什么。

GetClassName 函数检索指定窗口所属的类的名称。 RealGetWindowClass 函数检索指定窗口类型的字符串。

以使用 windows calc.exe 为例
从 GetClassName 你得到“SciCalc”
从 RealGetWindowClass 你得到“#32770”

我想我真正要问的是什么是“窗口类型”与“窗口类名”?

【问题讨论】:

    标签: windows user-interface winapi


    【解决方案1】:

    见以下文章:http://forums.wincustomize.com/3258deadlink 更新链接https://blogs.msdn.microsoft.com/oldnewthing/20101231-00/?p=11863

    总结:
    添加了 Real... 功能以支持 Windows 可访问性。 RealGetWindowClass 的目标是帮助辅助工具识别它正在使用哪种类型的窗口,即使应用程序以超类的形式做了一些伪装。

    如果您向 RealGetWindowClass 询问窗口的类名,它会挖掘所有超类并返回基类的名称(如果基类是标准窗口管理器类之一)。例如,如果您的应用程序超类化了按钮类,则调用 GetClassName 将返回 AwesomeButton,但调用 RealGetWindowClass 将返回按钮。

    【讨论】:

    • 链接不再存在。下次请提供概述。
    • 对于断开的链接 (-1)
    • here 是一个工作链接。简而言之,RealGetWindowClass 会删除任何 superclassed 名称。
    猜你喜欢
    • 2011-04-08
    • 1970-01-01
    • 2018-10-23
    • 2017-01-09
    • 1970-01-01
    • 2010-09-25
    • 1970-01-01
    • 2018-01-06
    • 2010-12-27
    相关资源
    最近更新 更多