• 链接出错:[Linker Fatal Error] Fatal: Unable to open file 'YB_BASE_C6.LIB' | |||
• 链接出错:[Linker Fatal Error] Fatal: Unable to open file 'SETUPAPI.LIB' | |||
• 链接出错:[ilink64 Error] Fatal: Unable to open file 'SETUPAPI.A' | |||
• 找不到头文件 Unable to find header for component: Vcl.YbCommDevice / Fmx.YbCommDevice | |||
• 找不到 .dfm 或 .fmx [ilink32 Error] Error: Unable to open file 'VCL.UNITYBCOMMDEVICEABOUT.DFM' 或其他 .DFM/.FMX | |||
• 生成独立的 exe 文件,发布的时候不需要带控件文件 | |||
• 升级之后找不到以前老版本控件的 .lib 文件 Unable to find static library: VictorCommC10.lib | |||
• 升级之后提示找不到 .obj 文件 [ilink32 Error] Fatal: Unable to open file 'YBCOMMDEVICE.OBJ' | |||
• 如何设定自定义波特率,比如 921600 或者 460800 等 | |||
链接出错:[Linker Fatal Error] Fatal: Unable to open file 'YB_BASE_C6.LIB' 新版本控件不需要 yb_base_c6.lib 这个文件了,关闭项目,用记事本打开项目文件 (*.bpr), 如果发现用记事本修改项目文件之后,用 BCB 无法打开的情况,这是由于 C++ Builder 6.0 不支持 UTF-8 引起的,
链接出错:[Linker Fatal Error] Fatal: Unable to open file 'SETUPAPI.LIB' 这个问题一般是 BCB6 和 BCB5 会出现,之后的版本会自动找到并且链接成功。 解决方法:需要把 $(BCB)\lib\psdk 添加到 Library path 里面; 具体操作步骤,请参阅 “C++ Builder 里面添加头文件路径和库文件路径”。 BCB 菜单: Project → Options → Directories/Conditionals
链接出错:[ilink64 Error] Fatal: Unable to open file 'SETUPAPI.A' 经过测试,只有 C++ Builder XE3 这个版本编译 64 位应用程序的时候,会出现这个问题,其他版本会自动找到这个文件并且链接成功。 解决方法:C++ Builder XE3 真的没有这个库文件,可以从其他版本复制一个到这个版本 例如从 C++ Builder 10.1 Berlin 的 到 C++ Builder XE3 的 文件夹,成功解决这个问题,经过测试,这个库文件是兼容的。
找不到头文件 Unable to find header for component: Vcl.YbCommDevice / Fmx.YbCommDevice 例1: Unable to find header file for component: Vcl.YbCommDevice 例2: Unable to find header file for component: Fmx.YbCommDevice 解决方法:项目需要添加控件的头文件和库文件的路径 第 1/5 步:选择菜单 Project - Options 打开项目的配置 第 2/5 步:添加头文件的路径:在项目配置里面,左面选择 C++ (Shared Options), 在打开的 “Include path” 对话框里面,中间的编辑框,如下图红色圈上的部分,找到控件的源码位置, 然后点击 “Add” 按钮,把路径添加到上面的列表里面,再点击 “OK” 按钮,完成头文件路径的设置。 第 3/5 步:添加库文件的路径:在项目配置里面,左面选择 C++ (Shared Options), 在打开的 “Library path” 对话框里面,中间的编辑框,如下图红色圈上的部分,找到控件的源码位置, 然后点击 “Add” 按钮,把路径添加到上面的列表里面,再点击 “OK” 按钮,完成库文件路径的设置。 第 4/5 步:添加 Win64 库文件的路径 (如果不需要 Win64 位,这一步可以略去,直接点击 “OK” 完成) 确保上面的 Target 选择的是 64 位 Windows 平台,需要额外添加 64 位的库文件路径: 在打开的 “Library path” 对话框里面,中间的编辑框,如下图红色圈上的部分,输入 $(BDSCOMMONDIR)\DCP\$(Platform) 然后点击 “Add” 按钮,把路径添加到上面的列表里面,再点击 “OK” 按钮,完成库文件路径的设置。 第 5/5 步:添加完路径,别忘了是点击 “OK” 按钮结束项目的配置,而不是点 “×” 或 “Cancel”。 至此,头文件和库文件的路径都设置完成,可以正常使用控件了。
例1: [ilink32 Error] Error: Unable to open file 'VCL.UNITYBCOMMDEVICEABOUT.DFM' 例2:[ilink32 Error] Error: Unable to open file 'FMX.UNITYBCOMMDEVICEABOUT.FMX' 解决方法,和 “找不到头文件 Unable to find header for component: Vcl.YbCommDevice / Fmx.YbCommDevice” 相同,
请点击 “生成独立运行的 exe 或 dll - 项目的常用的重要配置”
例1: Unable to find static library: VictorCommC10.lib, 这个找不到的文件是老版本的控件的 lib 文件,如下图
例2: [ilink32 Error] Fatal: Unable to open file 'VICTORCOMMC10.LIB' 这个找不到的文件是老版本控件的 .lib 文件,如下图:
解决方法:先关闭出错的项目,然后用记事本打开项目文件 *.cbproj, 找到并删除出错的 .lib 文件,可能会找到多个,都需要删除 如果上面两个截图,在项目文件里面找到了两处这个老版本的 .lib 文件,
[ilink32 Error] Fatal: Unable to open file 'YBCOMMDEVICE.OBJ' 如下图所示: 由于新版本的控件是 Vcl.YbCommDevice 或 Fmx.YbCommDevice 这样的格式,文件名前面有 Framework 的名字 Vcl 或 Fmx, 解决方法: 1.在 .h 文件里面删除 #include "YbCommDevice.h"
如何设定自定义波特率,比如 921600 或者 460800 等 1. 使用属性 BaudRate 或者 PortParams 设定任意波特率整数值 虽然要设定的波特率,例如 921600 波特率,在 Baud 下拉表里面没有这个值,但是可以使用 BaudRate 属性直接输入波特率整数值,如果输入的值在 Baud 下拉表里面,Baud 会自动切换到相应的波特率,如果 Baud 下拉表里面没有输入的值,会变成 brCustom,如下图所示,这表示使用 BaudRate 属性的整数值作为波特率值。 如果在 PortParams 属性里面修改波特率,也可以达到同样的效果,对应的波特率值会自动填入 BaudRate 属性里面,如果 Baud 下拉表里面没有输入的值,会变成 brCustom,如下图所示,这表示使用 BaudRate 属性的整数值作为波特率值。
2. 如果使用双击控件打开的对话框设定波特率,无论下拉表里面有没有需要设定的波特率值,都可以直接在输入框里面直接输入波特率整数值,如下图所示:
3. 如果使用的是老版本控件,没有 BaudRate 和 PortParams 属性,只能用代码来设定自定义波特率值:
而新版本的控件可以直接使用 BaudRate 属性设定任意波特率整数值:
或者使用 PortParams 属性同时设定串口名称、波特率、奇偶校验、数据位和停止位:
|
Victor串口常见错误
最新推荐文章于 2023-04-03 16:14:47 发布