请帮忙看一下,一个奇怪的错误!

hejun548 2008-03-13 10:52:13
HANDLE hWindow=CWnd::FindWindow(#32770,"RWtest Version: 1.0.0.2");

提示错误:
error C2014: preprocessor command must start as first nonwhite space

请问是什么原因啊?怎么解?谢谢!
...全文
132 9 打赏 收藏 举报
写回复
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
erwin1984 2008-03-13
  • 打赏
  • 举报
回复
HANDLE hWindow=CWnd::FindWindow("#32770","RWtest Version: 1.0.0.2");
应该是这样的。
#32770是窗口类的名字,是字符串的,需要用 "#32770" 来表示。
hejun548 2008-03-13
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 cad_vc 的回复:]
不知道你的具体使用环境。
下面是一种方法。

CString ClsName;
CWinApp* pApp = AfxGetApp();
ClsName = pApp-> m_pszExeName
HWND hWnd = CWnd::FindWindow((LPCTSTR)ClsName, NULL);
[/Quote]

谢谢,但是我是两个程序同时运行的。
请参考:
http://topic.csdn.net/u/20080312/15/4aa44895-7966-4d6f-bef0-03aa728e2e6d.html
cad_vc 2008-03-13
  • 打赏
  • 举报
回复
不知道你的具体使用环境。
下面是一种方法。

CString ClsName;
CWinApp* pApp = AfxGetApp();
ClsName = pApp->m_pszExeName
HWND hWnd = CWnd::FindWindow((LPCTSTR)ClsName, NULL);
hejun548 2008-03-13
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 cad_vc 的回复:]
#32770 是非法的c++命名
[/Quote]

cad_vc,你好!
既然#32770是非法命名,那我的语句HANDLE hWindow=CWnd::FindWindow(#32770,"RWtest Version: 1.0.0.2"); 要怎么改才能获得HANDLE?
cad_vc 2008-03-13
  • 打赏
  • 举报
回复
#32770 是非法的c++命名
hejun548 2008-03-13
  • 打赏
  • 举报
回复
我用SPY++得到的窗口Clase name:#32770 (Dialog)

#32770怎么是非法的呢?
请指点。
hejun548 2008-03-13
  • 打赏
  • 举报
回复
#32770是我获得窗口的类名啊!怎么会非法呢?
taodm 2008-03-13
  • 打赏
  • 举报
回复
#32770是非法的。
hejun548 2008-03-13
  • 打赏
  • 举报
回复
非常感谢大家!问题解决了。
发帖
C++ 语言

6.3w+

社区成员

C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
帖子事件
创建了帖子
2008-03-13 10:52
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下