-
-
[求助]关于窗口类的注册问题
-
发表于:
2011-4-11 20:05
6934
-
操作系统已经给我们注册了很多现成的窗口类,我们要创建窗口的时候直接CreateWindowEx就行了,像 "button","edit"这些窗口类都是操作系统已经给我们注册好了的,我们拿来直接用就行了,我现在写了一个dll,并把这个dll注入到第三方使用程序进程,然后用这个第三方程序已经注册过了的窗口类名创建窗口(这个窗口类名是我用spy查看到的,我没有程序源码)结果返回窗口创建失败,这是为什么呢?难然我们只能使用操作系统给我们注册过的窗口类,别人程序注册的窗口类我们就用不了?
hwnd = CreateWindowExW(NULL,L"TXGuiFoundation", // window class name
L"The Hello Program", // window caption
WS_OVERLAPPEDWINDOW, // window style
CW_USEDEFAULT, // initial x position
CW_USEDEFAULT, // initial y position
CW_USEDEFAULT, // initial x size
CW_USEDEFAULT, // initial y size
NULL, // parent window handle
NULL, // window menu handle
hInstance, // program instance handle
NULL) ;
我把我的dll注入QQ进程,然后直接使用QQ进程里注册过的窗口类TXGuiFoundation创建窗口结果失败
另外我还想问一下问题如果同一个的注册后的窗口类创建的两个不同的窗口,我使用setwindowlong修改了一个窗口的窗口过程,另外一个窗口的窗口过程,是不是也被修改了了?如果这两个窗口是使用相同的窗口类创建的,像QQ所有的窗口都是使用的TXGuiFoundation这个窗口类创建的窗口,我修改了主窗口的窗口过程,是不是聊天窗口的窗口过程也被一起改了?
问题很菜,请大家不要见笑
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课