EVC工程的移植

zabbix 监控EMC存储 经过搜索,找到了脚本地址,该项目应该是模板原作者创建的,该项目也有zabbix模板,和上面的应该是相同的,我用的是上面的模板。./unity_get_state.py --api_ip='X.X.X.X' --api_port='443' --api_user='zabbix' --api_password='PASSWORD' --storage_name="zabbix web前端配置的主机名" --discovery。修改权限,给zabbix用户执行权限,模板调用时以zabbix用户执行。 阅读详情

本文是针对作者本人的一个具体的移植项目,将碰到的所有问题列出来,并给出具体的解决方法。由于是一个具体的项目,因此不能把所有的EVC工程移植问题囊括进来。所以,在移植项目前,建议还是看看以下的文章:
循序渐进:将 eMbedded Visual C++ 应用程序迁移到 Visual Studio2005
eMbedded Visual C++ 到 Visual Studio 2005升级向导(注意其最后一句话:默认情况下,Embedded Visual C++ 4.0版会将 MFC Pocket PC 应用程序的对话框样式(Border)设置为DS_MODALFRAME。MFC 8.0 不支持此样式。 --应改为Thin,如果不改的话,窗口就无法弹出。)
从 eVC 移植所带来的已知问题
Migrating Microsoft eMbedded Visual C++ Projects to Visual Studio2005
       开发环境:Windows XP +SP2, Visual Studio 2005 professional,Windows Mobile 6.0 Professional SDK。
注:(1)对于Windows Mobile 5.0 SDK 开发的程序在Windows Mobile 6.0下也能运行,而且不需要对程序进行任何的修改。
     (2)由于有些错误,是环境配置问题,所以在Debug/Resease模式下,都需要进行修改,以下错误中,如果是这类错误,都在标号后面写着"Resealse模式也需要改",当天切换到别的SDK下,如Windows Mobile 5.0SDK,也需要修改。
     以下是针对Debug模式下的:
1、StdAfx.cpp (Resealse 模式也需要改)
编译错误:D:\Program Files\Microsoft Visual Studio8\VC\ce\atlmfc\include\afxver_.h(77) : fatal error C1189: #error :Please use the /MD switch for _AFXDLL builds
解决方法:右击工程名,打开Projectproperties对话框,切换到C/C++->Code generation页,将RuntimeLibarary 设置成"Multi-threaded DLL(/MD)",即可解决此问题。
2、编译错误:error C2065: 'i' : undeclared identifier
原因:是由于存在以下的代码段:
for (int i = 0; i < MAX_LEN; i ++)
{
   //……
}
for (i = 0; i < MAX_NUM; i ++)
{
    //……
}
对于evc离开循环后,循环变量仍然有效,并且仍可以使用,但是在VS2005下是不行的,由此可见VS2005对变量的定义与审查更为严格,还有就是对数组越界问题也比EVC来的强。
解决方法:(不能完全相信编译器,也不能把所有的语法检查都丢给编译器)
int i = 0;
for (i = 0; i < MAX_LEN; i ++)
{
    //……
}
for (i = 0; i < MAX_NUM; i ++)
{
    //……
}
3、error C2664: '_wcsnicmp' : cannot convert parameter 2 from'LPWORD' to 'const wchar_t *'
 需要强制类型转换。
4、error C2061: syntax error : identifier 'HELPINFO'
自己增加HELPINFO的类型,增加头文件HelpInfo.h。
5、error C2146: syntax error : missing ';' before identifier'm_wndCommandBar'
原因:在Windows Mobile 5.0/6.0下CCeCommandBar类被CCommandBar替换
解决方法:
CCeCommandBar   m_wndCommandBar;---- 〉CCommandBar  m_wndCommandBar;
6、error C2065: 'NUM_TOOL_TIPS' : undeclared identifier
解决:
//#if defined(_WIN32_WCE_PSPC) && (_WIN32_WCE >=212)
#define NUM_TOOL_TIPS 8
//#endif
7、error C3861: 'ON_WM_HELPINFO': identifier not found
同 4
8、error C2440: 'static_cast' : cannot convert from 'void (__cdeclCMyAppView::* )(void)' to 'LRESULT (__cdecl CWnd::*)(WPARAM,LPARAM)'None of the functions with this name in scopematch the target type
解决方法:
afx_msg void OnHotLinkExplain();  --- 〉
afx_msg LRESULT OnHotLinkExplain(WPARAM wParam,LPARAMlParam);
9、error C2664: 'CSize CDC::GetTextExtent(LPCTSTR,int) const' :cannot convert parameter 1 from 'WORD *' to 'LPCTSTR'
Types pointed to are unrelated; conversion requiresreinterpret_cast, C-style cast or function-stylecast需要强制转换
pDC->GetTextExtent(&i,1).cx);   -->
pDC->GetTextExtent((LPCTSTR)&i, 1).cx;
10、error C2039: 'OnHelpInfo' : is not a member of 'CView'
error C2039: 'OnHelpInfo' : is not a member of 'CFrameWnd'
error C2039: 'OnHelpInfo' : is not a member of 'CDialog'
解决方法:用TRUE替换相应的类成员函数OnHelpInfo'
return CView::OnHelpInfo(pHelpInfo); --> return TRUE;
11、error C2039: 'm_bShowSharedNewButton' : is not a member of'CCommandBar'
D:\Program Files\Microsoft Visual Studio8\VC\ce\atlmfc\include\afxext.h(557) : see declaration of'CCommandBar'
解决方法:
直接注释掉 m_wndCommandBar.m_bShowSharedNewButton = FALSE;
12、.\MyApp.rc(380) : fatal error RC1015: cannot open include file'wceres.rc'.
解决方法:
直接注释掉:#include"wceres.rc"        // WCE-specific components
但是,这个错误很讨厌,每次你修改资源文件后,都得修改该语句,不知道为什么。
13、Resease 模式下也要修改
error LNK2019: unresolved external symbol SHInitExtraControlsreferenced in function "protected: __cdeclCMyAppView::CMyAppView(void)" (??0CMyAppView@@IAA@XZ)
问题:程序中调用了SHInitExtraControls();
error LNK2019: unresolved external symbol SHSipPreferencereferenced in function "protected: void __cdeclCMyAppView::OnKillfocusWord(void)"(?OnKillfocusWord@CMyAppView@@IAAXXZ)
问题:程序中调用了SHSipPreference
以上两个函数都在:Library: aygshell.lib里
解决方法:
工程-->属性-->Linker -->input -- > AdditionalDenpendencies :aygshell.lib
14、Resease 模式下也要修改
orelibc.lib(wwinmain.obj) : error LNK2019: unresolved externalsymbol wWinMain referenced in function wWinMainCRTStartup
属性-〉Linker-〉Anvanced-〉EntryPoint
将 wWinMainCRTStartup 更改为 WinMainCRTStartup
EntryPoint是WinMainCRTStartup(ANSI)或wWinMainCRTStartup(UINCODE),即:... WinMainCRTStartup 或wWinMainCRTStartup 会调用WinMain或wWinMain。
15、  error C3861: 'LoadStdProfileSettings':identifier not found
注释掉函数 LoadStdProfileSettings;
该函数的具体功能,看MSDN。
      BTW:编译的时候,有可能会出现一些由以上错误产生的连锁错误,俗称"蝴蝶效应",如errorC2143: syntax error : missing ';' before '}'
error C2143: syntax error : missing ';' before ','
error C2143: syntax error : missing ';' before '{'
少了了'{'、'}'、';'等等,把以上的错误-主要矛盾解决了,这些错误-错误矛盾也就迎刃而解了。何况,这个工程是以前在EVCIDE下编译通过,MS再怎么优化或改进编译器,也总不可能发生自相矛盾的事情吧,总要考虑兼容性吧,要对自己或公司的前辈有信心!
     到此,已经能够编译通过,但是运行的时候,又出现如下的问题:
16、Resease 模式下也要修改
按F5,出现如下的对话框:

解决方法:
 右击工程的属性-〉General-〉Project Defaults-〉Use MFC :
Use MFC in a shared DLL --> Use MFC in a static DLL
也正是因为这个,VS2005产生的EXE程序比EVC产生的要大200多k。

     这样,程序基本移植完成,但是还要把所有的功能过一遍,有可能还会碰到,诸如对话框出现乱码、菜单不对等问题。

汽车OBD接口实战:如何用STM32读取CAN总线数据(附完整代码) 本文详细介绍了如何利用STM32微控制器通过汽车OBD接口读取CAN总线数据的完整实战方案。内容涵盖硬件连接(如OBD引脚定义与TJA1050收发器接线)、STM32的CAN外设初始化与滤波器配置,并深入解析OBD-II诊断协议,演示了如何请求和解析发动机转速、车速等关键数据。文末提供了构建稳定数据读取系统的代码框架与错误处理建议,为嵌入式开发者和汽车电子爱好者提供了从零到一的实践指南。 阅读详情

相关推荐

逆向实战:Soul聊天协议加密与Frida绕过检测

本文详细解析了Soul聊天协议逆向分析的全过程,重点介绍了如何利用Frida绕过应用的反调试检测机制。通过静态分析定位关键SO库,并编写Frida脚本动态Hook线程创建函数,成功实现对抗。文章还进一步追踪了基于DES算法的加密流程,并探讨了协议数据结构的解析方法,为移动应用安全研究提供了实战参考。

2w3e4r5t6y的博客 1131

也谈EVC工程移植

也谈EVC工程移植 2011年07月05日   [b]也谈EVC工程移植[/b]   本文是针对作者本人的一个具体的移植项目,将碰到的所有问题列出来,并给出具体的解决方法。由于是一个具体的项目,因此不能把所有的EVC工程移植问题囊括进来。所以,在移植项目前,建议还是看看以下的文章:   循序渐进:将 eMbedded Visual C++ 应用程序迁移到 Visual Studio ...

kihot68l 118

Aruba CX交换机 初始化配置

Aruba CX 交换机 6000系列 8000系列交换机配置

Harry_Guo 1834

EVC到vs2005工程移植

大家知道MOBIL5.0开始,EVC4开发的工程就无法进行DEBUG了,而必须使用VS.NET2005中的VC++来实现。但是以前我们费了很大心力做成的项目,也不能重新来写。今天通过一上午的研究,将转化方法贴出来和大家共勉。       这里我们以DIALOG BASED工程为例。首先用EVC4建立一个DIALOG BASED的POCKET PC 2003工程。此工程名我们暂定为TXD

kuiyuan的专栏 2447

局部路径规划算法 - B样条曲线(B-spline Curves)

本文详解了B样条以及代码实现

BigDavid123的博客 6506

Cluster Computing投稿

在overleaf中新建picins.sty文件,该文件是导入的包在.tex文件中添加以下内容\usepackage{picins}%实现作者简介%下边这块有几个人复制几段\vspace{0\baselineskip} %这一行控制作者间隔,可视情况改数字!!!!!!!!

这里是萤石ym的学习路途,努力搬砖! 5533

谈谈EVC工程移植

<br />本文是针对作者本人的一个具体的移植项目,将碰到的所有问题列出来,并给出具体的解决方法。由于是一个具体的项目,因此不能把所有的EVC工程移植问题囊括进来。所以,在移植项目前,建议还是看看以下的文章:<br />循序渐进:将 eMbedded Visual C++ 应用程序迁移到 Visual Studio 2005<br />eMbedded Visual C++ 到 Visual Studio 2005 升级向导(注意其最后一句话:默认情况下,Embedded Visual C++ 4.0 版会

koukouwuwu的专栏 569

软件工程实验报告--用Visio绘制数据流图、ER图、状态图、软件结构图、程序流程图、系统流程图

用Visio绘制数据流图、ER图、状态图、软件结构图、程序流程图、系统流程图

m0_73814332的博客 4160

EVC工程移植(转载)

本文是针对作者本人的一个具体的移植项目,将碰到的所有问题列出来,并给出具体的解决方法。由于是一个具体的项目,因此不能把所有的EVC工程移植问题囊括进来。所以,在移植项目前,建议还是看看以下的文章:循序渐进:将 eMbedded Visual C++ 应用程序迁移到 Visual Studio 2005eMbedded Visual C++ 到 Visual Studio 2005 升级向导(注意其

JXES智能生态系统 1459

实战篇【2】-H3C防火墙开局基础配置

本篇文章为“H3C防火墙开局基础配置”,主要涵盖配置管理地址、聚合端口、安全区域、安全策略、静态路由、ACL,WEB和SSH远程管理、Console、SNMP、NTP时钟、日志主机等内容,对比交换机配置开局,增加两处配置,安全区域和安全策略。方便调试人员远程管理、调试。

weixin_47402139的博客 1万+

[27] cuda 应用之 核函数实现图像通道变换

[27] cuda 应用之 核函数实现图像通道变换

yohnyang的博客 201

EVC工程移植到VS2005的经验

本文是针对作者本人的一个具体的移植项目,将碰到的所有问题列出来,并给出具体的解决方法。由于是一个具体的项目,因此不能把所有的EVC工程移植问题囊括进来。所以,在移植项目前,建议还是看看以下的文章: 循序渐进:将 eMbedded Visual C++ 应用程序迁移到 Visual Studio 2005  eMbedded Visual C++ 到 Visual Studio 2005 升级向

yesheng1989 836

华为OD机试双机位C卷:字符串计数匹配 (C/C++/Py/Java/Js/Go)

华为OD机试双机位C卷 字符串计数匹配,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解。 华为OD机试 字符串计数匹配, 华为OD上机考试 - 字符串计数匹配。

qq_45776114的博客 1647

evc程序移植到VS2005

一、VS2005新建工程(跟要移植的工程同名,这样可以复制资源)。 二、把evc下的.h 和.cpp文件复制到新工程,把原.rc文件覆盖新工程.rc。 复制资源有几种方法,这里引用一个网友xuyongbeijing2008的文章 法1: 在你的工程中添加另一个工程的rc文件,这时资源视图中就会出现两个rc,从后加的rc中拷贝资源到你自己工程的rc中就可以了。   法2:vc

aristolto的专栏 2412

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

evc4工程移植vs.net2005所碰到的问题积累

<br />[收集自网络] <br />原文:http://hi.baidu.com/copperlee/blog/item/c5c7abdc2a5f9fa3cc116638.html<br />在移植项目前,建议还是看看以下的文章: <br />循序渐进:将 eMbedded Visual C++ 应用程序迁移到 Visual Studio 2005 <br />eMbedded Visual C++ 到 Visual Studio 2005 升级向导(注意其最后一句话:默认情况下,Embedded Vi

bigapple88的专栏 901

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Wince系统-EVC工程文件转换到VS2005工程文件的方法

EVC工程文件转换到VS2005工程文件 大家在学习wince时是不是都想找个例子程序来看看,不然,网上的程序平台各异,比如你装了vs2005,结果例子代码是EVC4.0的。这还不说,关键是EVC软件关键不能再win7下运行,这个纠结啊!让遇见这个问题时,对于新手来说特别茫然和无奈! 下面我介绍我移植EVC项目的方法,EVC项目分为带MFC界面和不带MFC界面的,不带界面的工程移植其他比较

岁月的专栏 1676

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

evc4工程移植vs2005所碰到的问题积累

在移植项目前,建议还是看看以下的文章: 循序渐进:将 eMbedded Visual C++ 应用程序迁移到 Visual Studio 2005 eMbedded Visual C++ 到 Visual Studio 2005 升级向导(注意其最后一句话:默认情况下,Embedded Visual C++ 4.0 版会将 MFC Pocket PC 应用程序的对话框样式(Border)设置为 D

Ei的日志 2100
上一篇: WINCE硬件,底层到应用整个过程详解
下一篇: DirectShow应用程序快速入门
DecJ
博客等级 码龄18年 537粉丝 25原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值