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

2024-01-27 11:32

本文主要是介绍在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、享用这一切…
…或修改你的程序,现在你将没有借口解释你那些缺少名字定义的函数了!

这篇关于在Codewarrior 3.x中集成LeaveScan(转)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/650113

相关文章

SpringBoot3应用中集成和使用Spring Retry的实践记录

《SpringBoot3应用中集成和使用SpringRetry的实践记录》SpringRetry为SpringBoot3提供重试机制,支持注解和编程式两种方式,可配置重试策略与监听器,适用于临时性故... 目录1. 简介2. 环境准备3. 使用方式3.1 注解方式 基础使用自定义重试策略失败恢复机制注意事项

SpringBoot集成LiteFlow实现轻量级工作流引擎的详细过程

《SpringBoot集成LiteFlow实现轻量级工作流引擎的详细过程》LiteFlow是一款专注于逻辑驱动流程编排的轻量级框架,它以组件化方式快速构建和执行业务流程,有效解耦复杂业务逻辑,下面给大... 目录一、基础概念1.1 组件(Component)1.2 规则(Rule)1.3 上下文(Conte

使用vscode搭建pywebview集成vue项目实践

《使用vscode搭建pywebview集成vue项目实践》:本文主要介绍使用vscode搭建pywebview集成vue项目实践,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录环境准备项目源码下载项目说明调试与生成可执行文件核心代码说明总结本节我们使用pythonpywebv

Maven项目中集成数据库文档生成工具的操作步骤

《Maven项目中集成数据库文档生成工具的操作步骤》在Maven项目中,可以通过集成数据库文档生成工具来自动生成数据库文档,本文为大家整理了使用screw-maven-plugin(推荐)的完... 目录1. 添加插件配置到 pom.XML2. 配置数据库信息3. 执行生成命令4. 高级配置选项5. 注意事

Java集成Onlyoffice的示例代码及场景分析

《Java集成Onlyoffice的示例代码及场景分析》:本文主要介绍Java集成Onlyoffice的示例代码及场景分析,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 需求场景:实现文档的在线编辑,团队协作总结:两个接口 + 前端页面 + 配置项接口1:一个接口,将o

Swagger2与Springdoc集成与使用详解

《Swagger2与Springdoc集成与使用详解》:本文主要介绍Swagger2与Springdoc集成与使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录1. 依赖配置2. 基础配置2.1 启用 Springdoc2.2 自定义 OpenAPI 信息3.

Spring Boot 集成 Solr 的详细示例

《SpringBoot集成Solr的详细示例》:本文主要介绍SpringBoot集成Solr的详细示例,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友一起看看吧... 目录环境准备添加依赖配置 Solr 连接定义实体类编写 Repository 接口创建 Service 与 Controller示例运行

Spring Boot集成SLF4j从基础到高级实践(最新推荐)

《SpringBoot集成SLF4j从基础到高级实践(最新推荐)》SLF4j(SimpleLoggingFacadeforJava)是一个日志门面(Facade),不是具体的日志实现,这篇文章主要介... 目录一、日志框架概述与SLF4j简介1.1 为什么需要日志框架1.2 主流日志框架对比1.3 SLF4

Spring Boot集成Logback终极指南之从基础到高级配置实战指南

《SpringBoot集成Logback终极指南之从基础到高级配置实战指南》Logback是一个可靠、通用且快速的Java日志框架,作为Log4j的继承者,由Log4j创始人设计,:本文主要介绍... 目录一、Logback简介与Spring Boot集成基础1.1 Logback是什么?1.2 Sprin

springboot集成Lucene的详细指南

《springboot集成Lucene的详细指南》这篇文章主要为大家详细介绍了springboot集成Lucene的详细指南,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的小伙伴可以跟随小编一起... 目录添加依赖创建配置类创建实体类创建索引服务类创建搜索服务类创建控制器类使用示例以下是 Spring