编译MapWindowGis源码出现的重定义的问题及解决办法

作者:朱金灿

来源:http://blog.csdn.net/clever101

 

        下载最新的MapWindowGis源码,然后写了个测试程序,出现下面的重定义错误:

 

1>e:\2012\mapWindow\intdir\debug\testocx\mapWindow.tlh(4444): error C2535: “long mapWindow::IImage::GetOriginalHeight(void)”: 已经定义或声明成员函数

1>       e:\2012\mapWindow\intdir\debug\testocx\mapWindow.tlh(4435) : 参见“mapWindow::IImage::GetOriginalHeight”的声明

1>e:\2012\mapWindow\intdir\debug\testocx\mapWindow.tlh(4445): error C2535: “long mapWindow::IImage::GetOriginalWidth(void)”: 已经定义或声明成员函数

1>       e:\2012\mapWindow\intdir\debug\testocx\mapWindow.tlh(4434) : 参见“mapWindow::IImage::GetOriginalWidth”的声明

1>e:\2012\mapWindow\intdir\debug\testocx\mapWindow.tlh(4513): error C2535: “double MapWindow::IImage::GetOriginalXllCenter(void)”: 已经定义或声明成员函数

1>       e:\2012\mapWindow\intdir\debug\testocx\mapWindow.tlh(4440) : 参见“MapWindow::IImage::GetOriginalXllCenter”的声明

1>e:\2012\mapWindow\intdir\debug\testocx\mapWindow.tlh(4516): error C2535: “double MapWindow::IImage::GetOriginalYllCenter(void)”: 已经定义或声明成员函数

1>       e:\2012\mapWindow\intdir\debug\testocx\mapWindow.tlh(4441) : 参见“MapWindow::IImage::GetOriginalYllCenter”的声明

1>e:\2012\mapWindow\intdir\debug\testocx\mapWindow.tlh(11208): error C2366: “MapWindow::IImage::GetOriginalHeight”: 重定义;不同的 implementation_key 说明符

1>       e:\2012\mapWindow\intdir\debug\testocx\mapWindow.tlh(4435) : 参见“MapWindow::IImage::GetOriginalHeight”的声明

1>e:\2012\mapWindow\intdir\debug\testocx\mapWindow.tlh(11209): error C2366: “MapWindow::IImage::GetOriginalWidth”: 重定义;不同的 implementation_key 说明符

1>       e:\2012\mapWindow\intdir\debug\testocx\mapWindow.tlh(4434) : 参见“MapWindow::IImage::GetOriginalWidth”的声明

1>e:\2012\mapWindow\intdir\debug\testocx\mapWindow.tlh(11245): error C2366: “MapWindow::IImage::GetOriginalXllCenter”: 重定义;不同的 implementation_key 说明符

1>       e:\2012\mapWindow\intdir\debug\testocx\mapWindow.tlh(4440) : 参见“MapWindow::IImage::GetOriginalXllCenter”的声明

1>e:\2012\mapWindow\intdir\debug\testocx\mapWindow.tlh(11247): error C2366: “MapWindow::IImage::GetOriginalYllCenter”: 重定义;不同的 implementation_key 说明符

1>               e:\2012\mapWindow\intdir\debug\testocx\mapWindow.tlh(4441): 参见“MapWindow::IImage::GetOriginalYllCenter”的声明

 

        细看源码,发现GetOriginalHeight、GetOriginalWidth、GetOriginalYllCenter和GetOriginalYllCenter四个接口函数已被废弃,被其它函数所取代,所以在源码里及odl文件注释掉这些函数的声明和实现再重新编译和注册ocx控件即可解决这些错误。

 

       如果你觉得我的博客对你有帮助,请在下面网址中博客之星评选活动中投我一票:

http://vote.blog.csdn.net/item/blogstar/clever101(单击候选人介绍下面的投他一票那个按钮)

参与投票有机会获奖:

     最佳贡献奖:通过微博分享活动就有机会获得30元充值卡一张(每周抽选5名)
    幸运奖:凡参与投票用户就有机会获得精美小礼品一份。(每周抽选5名)
    积极参与奖:所有参与投票并符合条件的用户均可获得20个下载积分。


 


评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

clever101

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值