1、 文档目标
指定MDK在工程构建过程中指定退出构建的退出代码。
2、 问题场景
在构建过程中,通常会输出工程中涉及的Error和Warning信息。但是对于一些系统错误不会进行报告。所以无法确认在构建过程中是否会出现一些系统错误。
3、软硬件环境
1)、软件版本:Keil MDK 5.38a
2)、电脑环境:Windows 11
3)、外设硬件:无
4、解决方法
1)、µVision在每个构建过程之后设置ERRORLEVEL来指示状态。包含的有(如图4-1):
(1)、Level 1:警告
(2)、Level 2:报错
(3)、Level 3:致命错误
(4)、Level 11:无法打开项目文件进行写入
(5)、Level 12:在数据库中找不到给定名称的设备
(6)、Level 13:对于工程文件进行写操作出错
(7)、Level 15:读取导入XML文件时出错
(8)、Level 20:转换项目出错

图4-1
2)、在window中定义的有15999个(如图4-2)。常见的几个为:
(1)、Level 0 ERROR_SUCCESS:操作成功完成。
(2)、Level 1 ERROR_INVALID_FUNCTION:不正确的函数。
(3)、Level 2 ERROR_FILE_NOT_FOUND:系统找不到指定的文件。
(4)、Level 3 ERROR_PATH_NOT_FOUND:系统找不到指定的路径。
(5)、Level 4 ERROR_TOO_MANY_OPEN_FILES:系统无法打开该文件。
(6)、Level 5 ERROR_ACCESS_DENIED:拒绝访问
(7)、Level 6 ERROR_INVALID_HANDLE:无效的处理
(8)、Level 7 ERROR_ARENA_TRASHED:存储控制块被销毁。

图4-2
3)、在MDK中可以通过在对于单文件的配置中去设置退出条件。在Option窗口中,在Properties中的Stop on Exit Code中就可以设置退出代码(如图4-3)。
例如:Translator WarningsErrorFatal Error:就是对于这些等级的退出代码进行解释,确认具体情况。
Custom Exit Code >=4/5/6/78/9/10:如果出现了大于这个退出代码等级的报错,就会停止构建。

图4-3
【更多软件使用问题请站内搜索或关注B站:查看视频教学】