常见问题

Q1. 用Visual Studio新建一个C++工程,引用aubo_sdk头文件和库文件后,编译报错type_def.h中“常量中有换行符”。

  • 问题截图: q1-1

  • 解决方案: 在项目里设置编译选项 /utf-8。注意:如果有多个参数,各参数之间请用空格分隔。 q1-2

Q2. 在 Visual Studio中已配置/uft-8,代码中有中文,编译报错“常量中有换行符”。

  • 问题截图: q2

  • 解决方案:

    • 方法1:中文字符串以空格结尾
    • 方法2:将中文字符串替换为英文字符串

Q3. Visual Studio 运行程序时抛出未处理的 AuboException 异常,导致程序崩溃。

  • 问题截图: q3

  • 解决方案: 在代码中做 AuboException 异常处理,具体方法请参考 异常处理

Q4. RPC连接失败,SDK日志报错“Connect to <IP_ADDRESS>:<PORT> FAILED" 。

  • 问题截图: q4

  • 解决方案:

    1. 控制台 SDK 日志打印的 <IP_ADDRESS>:<PORT> 表示目标机器人 IP 地址和 RPC 端口号。请注意,RPC 的端口号固定为30004。
    2. 检查代码中指定的机器人 IP 地址和 RPC 端口号是否正确。
    3. 检查本地计算机与目标机器人之间的网络连接。可以使用 ping 命令进行测试,具体方法请参考 SDK PC端与机器人通讯设置

Q5. try/catch捕获到AuboException异常“RPC request timeout”。

  • 问题截图: q5

  • 解决方案:

    1. 确保在调用 RPC 客户端的 connect 接口前,已调用 setRequestTimeout 设置请求超时时间。若未调用,请添加 setRequestTimeout(1000)。

    2. 若已调用 setRequestTimeout,尝试增大超时时间,例如调整参数值为 3000 以提高请求成功率。

Q6. 在 Windows 7上运行 SDK 开发包中的 C++ 示例,报错“无法启动此程序,因为计算机中丢失 api-ms-win-core-libraryloader-l1-2-0.dll”。

  • 问题截图: q6

  • 问题原因: SDK 开发包中,lib 文件夹里的 cryptbase.dll 与 Windows 7 系统自带的 cryptbase.dll 不兼容。

  • 解决方案:

    • 方法1:仅导入 lib 文件夹中的 aubo_sdkd.dll、aubo_sdk.dll、aubo_sdkd.lib 和 aubo_sdk.lib
    • 方法2:删除 lib 文件夹中的 cryptbase.dll
    • 方法3:替换 lib 文件夹中的 cryptbase.dll 为本地计算机中的 C:\Windows\System32\cryptbase.dll

Q7. 在进行 C++ SDK 二次开发时,是否需要加载 SDK 开发包中 lib 文件夹内的所有 DLL 文件?

  • 解决方案: 只需要加载 aubo_sdkd.dll 和 aubo_sdkd.dll。

results matching ""

    No results matching ""