VC++6.0编写的ocx控件,增加参数后调用方一直报参数数目不对的解决办法

VC++6.0编写的ocx控件,增加参数后调用方一直报参数数目不对的解决办法

错误的做法:手动编辑映射代码。。。

BEGIN_DISPATCH_MAP(CAUTOCTSCtrl, COleControl)
//{{AFX_DISPATCH_MAP(CAUTOCTSCtrl)
//}}AFX_DISPATCH_MAP
END_DISPATCH_MAP()

原因:应该是VC6.0的漏洞


正确姿势:删除旧方法,Ctrl+W使用向导增加,如图:


被这个环境漏洞坑了一上午(添加方法界面中,直接写外部名称即可)。


一些以其他的问题及解决办法,记录在此:

1、Ctrl+W打开向导界面提示:Parsing error:Expected"afx_msg".Input Line:"DECLARE_MESSAGE_MAP()"

解决办法:将自己定义的消息写到外面,如

public:
//{{AFX_MSG(CLock_imageDoc)
afx_msg void OnStart();
afx_msg void Onsavefile();
afx_msg void OnStop();
afx_msg void OnFileSaveAs();
afx_msg void OnFileSave();
afx_msg void OnOriginalimage();
afx_msg void Onopenfile();
//}}AFX_MSG
afx_msg void OnmyMessage(); ///自己添加的消息对应的消息响应(放在//}}AFX_MSG的外面才行)
DECLARE_MESSAGE_MAP()

2、编译时提示:no compile tool is associated with the file extension

解决办法:你当前的文档是.h文档,切到.cpp文档即可(环境认为头文件是不参与编译的)。


3、链接提示:error LNK2001: unresolved external symbol __imp__PathRemoveFileSpecA@4

解决办法:工程->设置->链接页面,对象/库模块中添加 shlwapi.lib

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值