windows - 更换开始菜单

标签 windows winapi windows-vista windows-xp startmenu

我想替换我自己的“开始”菜单,我正在尝试找出使用什么方法。有多种激活开始菜单的方法:单击它,按 Windows 键,按 Ctrl+Esc 键或 tab 直到它获取焦点并点击空格或回车键。

我对 win32 的了解足够多,可以分别执行其中的每一项,而且我可以使用 Spy++ 解决它。我真的很想知道是否有更简单的方法,但我找不到任何有用的文章。

我想为 XP 和 Vista/Windows 7 执行此操作。

最佳答案

我想您必须将自己注入(inject) explorer.exe 进程(可以有多个进程,但您想要具有“Shell_TrayWnd”窗口的进程)并将任务栏或其子项之一子类化以捕获/eat 调出开始菜单的消息,而是显示您自己的窗口。

关于windows - 更换开始菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1376255/

相关文章:

c++ - 将我的应用程序与内核连接的最佳方式是什么?

c++ - 如何捕获 C++/Windows 中的每个异常?

c++ - 将 TCHAR 与字符串进行比较

windows-vista - DWM 和绘画无响应的应用程序

c - 调试断言失败。表达式(流!= NULL)

c++ - 在 OpenGL 应用程序中添加菜单栏和附加窗口

c - 驱动程序 PsLookupProcessByProcessId 错误代码 0xc000000b

c++ - 以编程方式告诉 Windows XP 待机

windows-vista - 使用 JScript (WSH) 刷新/重新启动 Vista 的图形登录屏幕

windows - Windows(特别是 Vista)如何确定我的应用程序是否挂起?