在Codewarrior 3.x中集成LeaveScan(转)

 在symbian os中,对于可能发生异常退出的函数,它的名字必须加以“L”后缀。对此symbian os 提供了一个工具LeaveScan。LeaveScan 可以检查代码中没有被正确命名的异常退出函数。

以下文章翻译自:

http://newlc.com/Integrating-LeaveScan-into.html

1、下载LeaveScan
可以在Symbian web site上下载该工具。下载并将其安装在如下列目录:
C:/Program Files/Symbian OS Tools/LeaveScan
同样的方法可以用于集成使用SymScan,但这又是一个冗长的话题。

2、在Codewarrior中创建工具入口
进入你Codewarrior3.1的默认安装目录,文件应当在
C:/Program Files/Nokia/CodeWarrior for Symbian v3.1/Bin/Plugins/Support/CompilerDescriptors/Symbian/
目录下。找到Nokia x86 Compiler.cwcomp,对其做一个拷贝命名为LeaveScan.cwcomp。用一个文本编辑器打开文件“LeaveScan.cwcomp”并做如下改动:
在文件中找到下述文本(在88行附近):
...
<!-- End of Compiler Definition -->
<struct>
...
在“End of Compiler Definition”右侧,加入以下文本
<struct>
<!-- +++++++++++++++Leave Scan++++++++++++++ -->
<setting uuid-alias="." entry="toolSymbolicCommandDef">
<simple>${var:TOOL_NAME} "${source.name}"</simple>
</setting>
<setting uuid-alias="." entry="toolType">
<simple>kToolLeaveScan</simple>
</setting>
<setting uuid-alias="." entry="toolDisplayName">
<simple>Symbian Leave Scan tool</simple>
</setting>
<setting uuid-alias="." entry="toolExecutableName">
<simple>C:/Program Files/Symbian OS Tools/LeaveScan/leavescan.exe</simple>
</setting>
<setting uuid-alias="." entry="parseStdOut">
<simple>true</simple>
</setting>
<setting uuid-alias="." entry="parseStdErr">
<simple>false</simple>
</setting>
<setting uuid-alias="." entry="defaultSwitch">
<simple></simple>
</setting>
<setting uuid-alias="." entry="outputParser">
<simple>kGCCMessageFormatParser</simple>
</setting>
</struct>
这样就添加了一个工具调用定义,其可以在编译时执行

3、安装新工具
在同一文件中,找到下述文本(51行)
<setting uuid-alias="." entry="postActionIdentifiers">
<array inheritance="none">
<simple>kToolSize</simple>
</array>
</setting>
在KTookSize调用后添加一行:
<simple>kToolLeaveScan</simple> :
The new block shall now look like:
<setting uuid-alias="." entry="postActionIdentifiers">
<array inheritance="none">
<simple>kToolSize</simple>
<simple>kToolLeaveScan</simple>
</array>
</setting>
这样你就可以在调用编译器及Size tool成功后调用LeaveScan工具了。
现在你可以保存文件并选择你所安装的工具。

4、安装你的目标工程
打开项目的 WINSCW目标设置窗口,找到Code Generation | Symbian Compiler选项,将编译器的选项从Nokia x86 Compiler 变为 LeaveScan。

一行警告信息会发表如何一个可能异常退出的函数没有加上L后缀:

 

5、享用这一切…
…或修改你的程序,现在你将没有借口解释你那些缺少名字定义的函数了!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值