找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 7927|回复: 7

[求助] 添加参数问题求助:参数值中文字符无法显示

[复制链接]

1

主题

8

回帖

0

威望

实习生

积分
11
发表于 2016-1-24 20:53 | 显示全部楼层 |阅读模式
各位大侠,请指教

程序段目的:针对工作目录下的block.prt,向模型中添加参数,参数名称Country(首字母大写),参数值中国。

程序段运行结果:参数名称为COUNTRY,参数值为空;

请问:
           1.参数值如何赋值中文字符?(PS:英文字符可以赋值成功,例如,代码中"中国"改为"China",则运行结果参数值显示为China 。)
           2.如何使控制参数名称的大小写?

void para_create()
{
        ProError status;
        ProFamilyName objname;
        ProMdl mdl_handle;
        ProName p_name;
        ProParameter p_return;
        ProModelitem p_model_item;
        ProParamvalue p_value;
        ProStringToWstring(objname,"block");
        status=ProMdlRetrieve(objname,(ProMdlType)PRO_PART,&mdl_handle);
        ProStringToWstring(p_name,"Country");        //运行结果:参数名称显示全部大写,而非首字母大写。
        p_value.type=PRO_PARAM_STRING;
            ProStringToWstring(p_value.value.s_val,"中国");//运行结果:中文字符无法赋值给参数Country,若是英文字符则可以赋值并显示。
        ProMdlToModelitem(mdl_handle,&p_model_item);
        status=ProParameterCreate(&p_model_item,p_name,&p_value,&p_return);
        status=ProParameterValueSet(&p_return,&p_value);
}

1

主题

8

回帖

0

威望

实习生

积分
11
 楼主| 发表于 2016-1-24 20:58 | 显示全部楼层
补充:
环境变量已经设置   中文 lang=chs
采用VS2008  字符集使用  UNICODE
回复

使用道具 举报

35

主题

240

回帖

1

威望

工程师

积分
313
发表于 2016-1-25 13:36 | 显示全部楼层
参数类型设置为字符串
回复

使用道具 举报

1

主题

8

回帖

0

威望

实习生

积分
11
 楼主| 发表于 2016-1-25 20:58 | 显示全部楼层
本帖最后由 wallacecarter 于 2016-1-25 20:59 编辑
sanyueyuzhe 发表于 2016-1-25 13:36
参数类型设置为字符串


请问怎么设置参数类型为字符串?请说明下,谢谢!

p_value.type=PRO_PARAM_STRING;  这个语句不行吗?
回复

使用道具 举报

35

主题

240

回帖

1

威望

工程师

积分
313
发表于 2016-1-26 15:20 | 显示全部楼层
wallacecarter 发表于 2016-1-25 20:58
请问怎么设置参数类型为字符串?请说明下,谢谢!

p_value.type=PRO_PARAM_STRING;  这个语句不行吗 ...

工具-参数 那里
回复

使用道具 举报

1

主题

8

回帖

0

威望

实习生

积分
11
 楼主| 发表于 2016-2-2 23:22 | 显示全部楼层
顶上去,求大侠帮忙解答
回复

使用道具 举报

2

主题

20

回帖

0

威望

实习生

积分
31
发表于 2019-9-12 15:23 | 显示全部楼层
楼主解决了吗,我也遇到这个问题了
回复

使用道具 举报

5

主题

55

回帖

2

威望

助工

积分
75
QQ
发表于 2019-10-19 13:08 | 显示全部楼层
本帖最后由 chencs 于 2019-10-19 13:09 编辑
且将新火试新茶 发表于 2019-9-12 15:23
楼主解决了吗,我也遇到这个问题了


Creo支持 utf8,Unicode 编码,不支持多字节编码。 ProStringToWstring(p_value.value.s_val,"中国"); 有问题,可以使用unicode 的 L“中国”,然后再进行字符串拷贝。
共同学习:https://www.yuque.com/creo
二次开发QQ:749997926
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

本站为非营利性站点,部分资源为网友搜集或发布,仅供学习和研究使用,如用于商业用途,请购买正版。站内所发布的资源,如有侵犯你的权益,请发邮件联系我们,本站将立即改正或删除。

手机版|小黑屋|野火论坛(©2007~2024) ( 苏ICP备11036728号-2 )苏公网安备 32039102000103号|站长QQ28016688

GMT+8, 2024-11-22 15:24 , Processed in 0.131987 second(s), 22 queries .

快速回复 返回顶部 返回列表