许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  学习日记:做PTC开发踩过的坑和心得,一语成谶的真实经历

学习日记:做PTC开发踩过的坑和心得,一语成谶的真实经历

阅读数 6
点赞 0
article_banner

第一次搭Pro/TOOLKIT环境,VS2017跟Creo 7.0的版本对不上,编译出来的dll扔进启动目录,Creo加载的时候弹“无法加载外部程序”,查了一下午才发现Creo 7.0要VS2017的14.16工具集,VS2019默认的v142编译出来不认。换回VS2017,重新生成,还是报错,这次是平台不对,x64的dll放进了x86的目录,Creo是64位的,dll也得是64位。


注册文件protk.dat写了三行,name写的是pro_toolkit_app,exec_file写D:\PTC\Toolkit\myapp.dll,text_dir写D:\PTC\Toolkit\text,startup写dll,allow_stop写true,delay_start写false。Creo启动的时候按name找菜单,name跟text目录下的消息文件名对不上,菜单出不来。消息文件myapp.txt里第一行写的是myapp,注册文件里name写的是pro_toolkit_app,两个名字必须一样,改完重启,菜单出来了,但点下去报“找不到回调函数”,回调函数的名字在ProCmdActionAdd里注册的跟C文件里定义的对不上,大小写敏感。


ProMenubarMenuAdd建顶级菜单,ProMenubarMenuAdd建子菜单,ProCmdActionAdd绑回调,ProMenubarMenuAdd把命令挂到菜单上,一套下来菜单能点了,但命令是灰的,因为没设敏感度,ProCmdActionAdd里的access函数返回了false,改成返回true才可点。消息文件里每一行用#分隔,第一段是消息名,第二段是显示文本,中文要转成宽字符,ProStringToWstring转完再传给菜单,不转的话中文全是乱码。

做PTC开发踩过的坑和心得

J-Link比TOOLKIT快,Java写逻辑不用管内存,但Java环境要跟Creo自带的JRE匹配,Creo 7.0带的是JDK 11,外部装的JDK 17编译出来class文件版本不对,加载报UnsupportedClassVersionError。VB API更简单,Creo里直接录宏,VBA代码改改就能用,但功能比TOOLKIT少,拉伸切除这些能调,复杂的特征创建经常找不到对应接口,最后还是回去写C。


关系式这个东西当初同事说“这个尺寸随便给,反正后面不改”,我就随手写了个d1=100,没做成参数,也没写关系式。三个月后客户要改,这个尺寸关联到另外三个零件的位置,全在装配里锁死了,改一个全红。当初要是把d1跟d0关联,d0做成参数,改d0就行,现在只能一个个零件打开改,改完还要重新装配。一语成谶,当初说“不改”的尺寸现在改得最多。


UDF做的时候参考选少了,选了一个底面和一个侧面,换一个模型底面形状变了,UDF放上去参考找不到,直接失败。后来做UDF至少选三个参考,底面、侧面、再加一个基准面,换模型的时候大不了重新指定,比失败强。族表也是,尺寸选少了,换个规格发现有个尺寸没在表里,模型对不上,回去补尺寸重新生成,之前的所有实例全要重新验证。


工程图自动化用ProDrawingViewCreate建视图,ProDrawingSheetCreate建图纸,ProDrawingViewCreate里要指定视图方向、比例、位置,建完视图再用ProDrawingViewCreateDetail建局部放大图,导出PDF用ProPlotCreate,DWG用ProExportDWG,路径里带中文的时候ProPlotCreate返回错误码,改成全英文路径才行。D:\PTC\Toolkit\下面那个myapp的工程文件,下次把消息文件里的中文全部转成宽字符再试,还有那个ProCmdActionAdd的access函数返回值……


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空