程序开发的一个关键之处是保持和微软用户界面相一致的特性。在开发过程中我尽可能的采用了微软的应用程序的字体和布局,商业开发人员更应该为他们的Windows CE应用程序设计出优美的界面。
获取代码
可以从这里下载这一例程的源代码
类结构
所有的代码加起来也有几千行,共分为5个文件。我选择用微软基础类库(MFC)来实现,软件也具有很好的扩展性。
CCNETConfig:这是程序的主线程,它起动与注册表的连接,建立与CPageTab1, CPageTab2, and CPageTab3的关联,然后利用属性表生成模态对话框,CCNETConfig是独立的。
CPropertySheet: CpropertySheet类基本上是空的,当你点击不同的标签时,MFC会处理不同的属性页,CpropertySheet也是独立的。
CPageTab: CpageTab类包含了与各自标签相关的代码,它完成属性页上数据的保存,传递,校验。
在默认状态下,Embedded Tools软件上传应用程序到/Windows/Start Menu目录下。如果你把应用程序上传到/Windows/Start Menu/Settings目录下,在文件夹中也可以找到图标。
这一结构程序具有三个属性页,如图C所示。CPageTab1处理的是与数据更新相关的任务,CpageTab2处理参数选择相关的任务,CpageTab3传送到cnet.com的任务。
从整体上看,程序并不是很复杂。程序员可以很容易地把代码移植到诸如无线802.11b驱动程序上。
每一个类都有它的特有成员变量表,这些变量能够通过MFC’s DDX保持编译环境的设置。在每一属性页的OnInitDialog函数中都执行UpdateData(FALSE)事件,然后在OnKillActive事件中通过UpdateData(TRUE)校验并把参数保存到注册表。
当OnKillActive事件被触发时程序就会把所有的信息保存到注册表,即使在程序发生异常的时候。而函数OnInitDialog则是对程序进行了初始化。
通过利用资源编辑器,我建立了如图D所示的三个属性表。标题栏遵循了其他程序的设计标准,标题栏下面的文字也采用了其他程序的字体和颜色。
字体下面的直线是采用1bit位图实现并当成一幅图片,除此之外,我还添加了检查框,静态文本框,编辑框,组合框等。
自定义静态文本框的字体和风格
为了获取静态文本框的合适字体,必需在CpageTab类中触发WindowProc事件,而只要发送WM_CTLCOLORSTATIC消息就可以更换静态文本框中的当前字体和字体的颜色了。
WM_CTLCOLORSTATIC把hDC和hWnd传送到静态文本框,在函数中的这些变量如Listing A.所示。
你可以看到,我使用了一个静态变量来生成字体,然后重载这一指针变量就可以更改这些字体。如果你不想改变字体,即不要重载PropertyPages中的WindowProc事件,代码的其他部分都会正常运行。
除了要生成合适的字体外,我还注重把界面设计成具有Windows CE系统专业的水平。
生成带有属性页的属性表
对于以上我生成的附带属性页的属性表,你一定会迷惑这一整个过程。我只是采用了MFC向导来自动生成四个独立的类,其中一个是派生于CpropertySheet类,其他三个是派生于CpropertyPage类。在CWinApp::InitInstance事件中,我在属性表中增加了属性页,如图Listing B所示。
我还举例说明了怎么样从CPropertySheet 和 CpropertyPage而不是从CPropertySheet 和CpropertyPage派生出对象。
我初始化了所有的变量并把页和表关联起来,之后调用DoModal事件就可以生成模态对话框。
当InitInstance返回FALSE,MFC不再执行窗体消息循环。我可以通过使用CPropertySheet::Create()而不是使用CPropertySheet::DoModal()来生成一个非模态对话框。如果我这样做,程序就返回TRUE,窗体消息循环就会进行。如果生成一个非模态对话框而返回FALSE,就会退出消息循环。
访问注册表
为了保存信息到注册表中,程序必需执行CpageTab类中的OnInitDialog和OnKillActive事件。Listing C中的代码说明了这一过程。
MFC能自动访问注册表,这一过程程序执行了GetProfileInt, GetProfileString, WriteProfileInt, 和 WriteProfileString函数。
图E显示了如何把界面上的参数选择和注册表入口关联起来。我采用EMbedded Tools 3.0软件中的Windows CE远程注册表编辑器来查看远距离设备上的注册表。
CE认证流程此流程适用于厂商找第三方实验室申请CE认证的流程:
1. 制造商相关实验室(以下简称实验室)提出口头或书面的初步申请。
2.申请人填写CE-marking申请表,将申请表,产品使用说明书和技术文件一并寄给实验室(必要时还要求申请公司提供一台样机)。
3. 实验室确定检验标准及检验项目并报价。
4. 申请人确认报价,并将样品和有关技术文件送至实验室。
5. 申请人提供技术文件。
6. 实验室向申请人发出收费通知,申请人根据收费通知要求支付认证费用。
7. 实验室进行产品测试及对技术文件进行审阅。
8. 技术文件审阅包括:
a文件是否完善。
b文件是否按欧共体官方语言(英语、德语或法语)书写。
9.如果技术文件不完善或未使用规定语言,实验室将通知申请人改进。
10.如果试验不合格,实验室将及时通知申请人,允许申请人对产品进行改进。如此,直到试验合格。申请人应对原申请中的技术资料进行更改,以便反映更改后的实际情况。
11.本页第9、10条所涉及的整改费用,实验室将向申请人发出补充收费通知。
12.申请人根据补充收费通知要求支付整改费用。
13.实验室向申请人提供测试报告或技术文件(TCF),以及CE符合证明(COC),及CE标志。
14.申请人签署CE保证自我声明,并在产品上贴附CE标示。
认证周期:1-2周
FDA认证流程
1. 准备阶段
企业法人执照复印件;
生产(卫生)许可证,合格证复印件;
企业简介(成立时间,技术力量,主要产品极其性能,资产状况)。
2. 技术初审申报受理
递交DMF(药物主文件)和SOP(标准 *** 作程序)的英译本文件给代理商;
根据代理商的意见,对上述文件进行修改。
3. DMF资料审阅
FDA认真审核,并到工厂实地考察,检查DMF文件所写是否属实;
若FDA未发现重大差错,并认为符合要求,则提出预批准检查计划。
4. FDA检查
FDA检查官对工厂进行检查,提问,工厂必须一一回答;
若有疑问,官员会给出“483”表(整改建议书),问题严重,则不给“483”表。
5. FDA签发“批准信”
必须认真回答“483”表上检查官提出的问题,若有问题,必须立即改正并证明;
检察官未搞清楚的问题,需解释证明
如何使用CE来修改游戏并制作一个修改器CE是一款内存修改工具 ,它允许你修改你的游戏或软件内存数据,以得到一些其他功能,如修改游戏里的金钱。与同类修改工具相比,它具有强大的反汇编功能,而且自身附带了修改器制作工具,可以用它直接生成修改器。
首先下载CE,地址在参考资料里面。打开后启动Cheat Engine.exe和练习软件Tutorial.exe
打开之前最好关闭杀毒软件,杀毒软件可能会误报。
windows vista和win 7用户请按右键选择“以管理员身份运行”
打开CE后可能会出现“想研究一下练习教程吗?”点“否”
在愚人节(4月1日)那天CE会出现一个小笑话,请不要理睬。
点击CE右上角的闪动的小电脑图标。
在d出的框里选择Tutorial.exe的进程
恭喜你,教程的第一关过了,点击下一步。
所有程序所显示的数值都存在内存里。本关的要求是将健康值改为1000,现在这个值是100.点击“打我”可以减一些血。
打开CE,在搜索栏里输入100,点击“首次扫描”
这时在左侧的栏里会出现一大堆值,但到底哪个才是我们要找的呢?
回到练习软件,点击“打我”。健康值下降到了97(你的可能不是97)
回到CE,在搜索框内输入你现在的健康值,点击再次扫描(一定是再次扫描!)
这次就只找到了一个,如果不是一个,就重复第9、10步,知道只有一个值为止。
双击这个值,可以看到这个值被移动到了下面。
下面就到了激动人心的时刻!双击这个“97”把它改为1000!
恭喜!过关!你已经掌握了修改大部分游戏的能力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)