You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Python的COM接口设置CANoe中的字符串型系统变量

如何通过Python COM接口设置CANoe字符串型系统变量?

我通过Python的COM接口操作CANoe系统变量,已经成功设置整数型变量,代码如下:

self.Application = win32com.client.dynamic.Dispatch("CANoe.Application")
Ver = self.Application.Version
self.Namespaces = self.Application.System.Namespaces
self.Namespace = self.Namespaces('BOT')

Machine = self.Namespace.Variables('Machine')
Machine.value = 8

但当CANoe中的系统变量为字符串类型时,直接调用函数赋值会导致脚本崩溃:

Machine = self.Namespace.Variables('Machine')
Machine.value = getText() // 返回字符串"8"

报错信息:

File "C:\Python39\lib\site-packages\win32com\client\dynamic.py", line 707, in __setattr__
raise AttributeError(
AttributeError: Property '<unknown>.value' can not be set.

解决方法

问题已解决,需要先将函数返回的字符串存入一个中间变量,再赋值给系统变量,代码如下:

Machine = self.Namespace.Variables('Machine')
var = getText() // 返回字符串"8"
Machine.value = var

目前原因未知,但该方法可正常设置CANoe的字符串型系统变量。

内容的提问来源于stack exchange,提问作者Ostpanaka

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 18:01:18