使用Python调用CREOSON做CREO二次开发
CREOSON是Simplified Logic, Inc.公司提供的一个开源第三方库,基于Jlink的API实现CREO的二次开发,官网为http://www.creoson.com。官方宣称CREOSON可以使用任意语言调用,使用Python做了测试,在此记录。
1. 安装设置CREOSON
首先确保JLINK已正确安装。在官网下载 CREOSON Server,地址在https://github.com/SimplifiedLogic/creoson/releases。下载解压后,运行目录下CreosonSetup.exe,在 Step 1:栏输入正确的CREO安装目录,点击 Start CREOSON,就可以启动CREOSON服务,如下图所示:
图 CREOSON Server设置
使用Python开发还需要安装 creopyson库:
1 | pip install creopyson |
这样就完成了CREOSON的安装和设置。
2. 代码撰写
CREOSON的函数说明及用户手册可在https://creopyson.readthedocs.io/en/latest/modules.html查询,写的很详细。思路主要是根据要调用的命令和对应的文件、参数等,构建一个json格式的数据,再使用CREOSON对应的函数调用数据发送给CREOSON服务,返回结果。尝试打卡一个简单的例子,连接已打开会话后,打开工作目录下fin.prt:
1 | import creopyson |
最后总结一下,CREOSON还是基于JLINK做异步开发的,思路是通过Http Post向CREOSON Server发送指令,所以函数调用相对简单,参数名称相对更人性化一些,还是以json格式为主。例如上面的代码,打开文件的时候没有激活窗口,如果需要,则只要在data这个json格式的参数中加入"activate": True属性即可:
1 | data = {"file": "fin.prt", "display": True, "activate": True} |
个人感觉调用CREOSON的设置相对简单,而且针对不同的版本只要修改 CREOSON Server路径即可,基本不需要再配置其他环境。同时由于CREOSON可被任意语言调用,所以用于集成在其他系统里面做一些简单的功能,应该还是挺好用的。