遇到一个奇怪的问题,别人留下的代码,编译执行都没问题,我想为对话框中的listctrl控件添加一个消息映射,但不管是在classview中用add windows message hander,还是在对话框资源中按ctrl+w,都报parsing error:Illegal line encountered. Input Line :"ON_MESSAGE(WM_XXXXX,Onyyy)" 这样的错误,在弹出的classwiazrd 对话框中的Message Maps页中原来添加的object ID、Messages等都没有列出来。此处的WM_XXXXX是用sendmessage发出的消息。查看了一下原来的代码,唯一值得怀疑的是有另外一个消息也调用了同一个处理函数,不过这好象不会造成这样的错误。把临时文件和ncb文件删掉也不管用。有谁遇到这种情况的吗?
联系方式见: www.vcshare.net
比如在程序中添加了
ON_NOTIFY_EX_RANGE(TTN_NEEDTEXTA, 0, 0xFFFF, OnToolTipText)
ON_NOTIFY_EX_RANGE(TTN_NEEDTEXTW, 0, 0xFFFF, OnToolTipText)
程序中就不能用类向导,需要先把这些删掉才行,类向导之后再添上
2.删除工程下.clw .ncb 文件及\debug目录,
3.Rebuild All
问题就是 zhaogaojian(米柑年成) 所说的那样,两个消息用了同一个处理函数,就无法用向导添加了,注释掉其中一个就行了。现在结帖。