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

设置OleVariant文本属性的正确字符串类型?C++Builder代码报错求助

问题解答

在C++Builder 6.0中,Excel的OLE自动化接口设置工作表名称时,需要传递BSTR类型的字符串,你当前使用xlTitle.c_str()得到的是ANSI编码的const char*,无法被OLE正确识别,因此触发“Incorrect Type”错误。

正确写法

直接传递CBuilder的String对象即可,因为CBuilder的Variant会自动将String转换为OLE所需的BSTR格式:

wSheet.OlePropertySet("Name", xlTitle);

补充说明

如果字符串包含非ASCII字符(比如示例中的葡萄牙语字符),直接传递String能确保编码正确转换,避免出现乱码问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 12:17:06