怎么调用AfxRegisterClass修改类名?
6 个解决方案
#1
http://computer.sz.net.cn/2004-07-19/nw2004071900061.shtml
#2
谢谢啦,我测试过。
在 VS.NET中创建一个基于CDialog的应用,按照第二种方法可以成功。
第一种方法出错,好象与第二种方法的修改rc 文件等效。
在 VS.NET中创建一个基于CDialog的应用,按照第二种方法可以成功。
第一种方法出错,好象与第二种方法的修改rc 文件等效。
#3
若想解决SDI中同样的问题,该怎么办呢?
一个基于SDI的应用用Spy++查看,
窗口类名为Afx:00400000:b:00010011:00000006:06A60867,四段好象跟窗口资源相关,具体不是很清楚,在FindWindows中如何引用?"#Afx..."或者 "Afx..."都找不到CWnd。
在CTest::InitInstance()中
...
GetClassInfo(AfxGetInstanceHandle(), "Afx:00400000:b:00010011:00000006:022407F7", &wc);//该句返回FALSE,"Afx..."转成"#Afx.."也一样
...
在int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)中
修改lpCreateStruct->lpszClass,,不出错,也没效果
一个基于SDI的应用用Spy++查看,
窗口类名为Afx:00400000:b:00010011:00000006:06A60867,四段好象跟窗口资源相关,具体不是很清楚,在FindWindows中如何引用?"#Afx..."或者 "Afx..."都找不到CWnd。
在CTest::InitInstance()中
...
GetClassInfo(AfxGetInstanceHandle(), "Afx:00400000:b:00010011:00000006:022407F7", &wc);//该句返回FALSE,"Afx..."转成"#Afx.."也一样
...
在int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)中
修改lpCreateStruct->lpszClass,,不出错,也没效果
#4
给窗口添加类的时候不是你自己定义类名吗
#5
我希望在其他程序中引用时方便些,指的是FindWindow中第一个参数lpszClassName,或者用Spy++显示出来的ClassName
SDI中MFC自己分配的感觉太乱,CDialog中分配的又千遍一律,想自定义这个值
SDI中MFC自己分配的感觉太乱,CDialog中分配的又千遍一律,想自定义这个值
#6
可能标题说的不清楚,抱歉
这里的窗口类名与SDK编程中的WNDCLASS结构中pszClassName一样,向系统注册的类名
这里的窗口类名与SDK编程中的WNDCLASS结构中pszClassName一样,向系统注册的类名
#1
http://computer.sz.net.cn/2004-07-19/nw2004071900061.shtml
#2
谢谢啦,我测试过。
在 VS.NET中创建一个基于CDialog的应用,按照第二种方法可以成功。
第一种方法出错,好象与第二种方法的修改rc 文件等效。
在 VS.NET中创建一个基于CDialog的应用,按照第二种方法可以成功。
第一种方法出错,好象与第二种方法的修改rc 文件等效。
#3
若想解决SDI中同样的问题,该怎么办呢?
一个基于SDI的应用用Spy++查看,
窗口类名为Afx:00400000:b:00010011:00000006:06A60867,四段好象跟窗口资源相关,具体不是很清楚,在FindWindows中如何引用?"#Afx..."或者 "Afx..."都找不到CWnd。
在CTest::InitInstance()中
...
GetClassInfo(AfxGetInstanceHandle(), "Afx:00400000:b:00010011:00000006:022407F7", &wc);//该句返回FALSE,"Afx..."转成"#Afx.."也一样
...
在int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)中
修改lpCreateStruct->lpszClass,,不出错,也没效果
一个基于SDI的应用用Spy++查看,
窗口类名为Afx:00400000:b:00010011:00000006:06A60867,四段好象跟窗口资源相关,具体不是很清楚,在FindWindows中如何引用?"#Afx..."或者 "Afx..."都找不到CWnd。
在CTest::InitInstance()中
...
GetClassInfo(AfxGetInstanceHandle(), "Afx:00400000:b:00010011:00000006:022407F7", &wc);//该句返回FALSE,"Afx..."转成"#Afx.."也一样
...
在int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)中
修改lpCreateStruct->lpszClass,,不出错,也没效果
#4
给窗口添加类的时候不是你自己定义类名吗
#5
我希望在其他程序中引用时方便些,指的是FindWindow中第一个参数lpszClassName,或者用Spy++显示出来的ClassName
SDI中MFC自己分配的感觉太乱,CDialog中分配的又千遍一律,想自定义这个值
SDI中MFC自己分配的感觉太乱,CDialog中分配的又千遍一律,想自定义这个值
#6
可能标题说的不清楚,抱歉
这里的窗口类名与SDK编程中的WNDCLASS结构中pszClassName一样,向系统注册的类名
这里的窗口类名与SDK编程中的WNDCLASS结构中pszClassName一样,向系统注册的类名