见图,执行SDKExamples/PipingExample的代码,创建的管线名称显示??,但是在Pipeline Manager中显示正常。
手动创建相同管线显示正常。
找一下软件中的locale.cfg文件,将SimplChinese那一行最前面的注释符# 删去,保存。重启OPM软件试一下。
没有找到locale.cfg,按描述,应该是下面这个文件
C:\Program Files\Bentley\OpenPlant CONNECT Edition\OpenPlantModeler\config\system\mslocale.cfg
把# MS_RTCONFIG = SimpChinese这行行首的#取消,然后重启OPM,问题一样存在,试过把SimpChinese改为SChinese也不行。
经过多次测试发现,代码创建的管线,一定会显示为?,但是只要关闭Preferences窗口,再重新打开,就能显示了……
我在中文和英文两种区域设置下做了测试,没能复现这个问题。
请问您使用的OPM的哪个版本,我使用的是10.07.00.32,如果低于这个版本,您是否方便用我这个版本做一下测试。
推测您的问号字符应该是U1和S1,两个字母数字字符串。如果是这样的字符串的话,那可能的原因就比较多了,因为这种字符串属于那种对各种区域和语言设置都“最安全的”。
如果版本一致的话,能否找到另外一台类似配置环境的机器做一下测试,不排除这是控件的刷新问题。
换了台电脑,切换成中文环境,一样的结果,执行以下命令
生成的管线号就显示成?,关闭重新打开首选项窗体就可以正常显示。
和字符串内容无关,我用数字作为区域和介质,也一样显示为?
我们Bentley公司使用的Windows和OPM软件均是英文版的,故无法复现您的情况。切换Windows英文版有点不现实,可以先将OPM的语言改成英文测试一下。有可能是汉化造成的问题。
开发环境用的OPM语言是英文的,见一楼截图。
只是显示问题,并不影响使用。
手工创建也是显示乱码还是说仅仅是程序创建的显示为乱码?
仅代码创建显示为?,手工创建显示正常。
然后,感觉不是乱码,只是未读取到对应内容,默认显示?