CREO weblink二次开发-调试程序
作为JavaScript编写的网页程序,Weblink应该是具备调试功能的,只是旧版Creo默认嵌入式浏览器内核为IE和Firefox暂时无法使用浏览器的调试工具。Creo在3.0版本后嵌入式浏览器内核加入了Chromium,自此官方说明可以使用Chrome/Chromium内核浏览器进行调试了。进行了一番尝试,在此记录。
作为JavaScript编写的网页程序,Weblink应该是具备调试功能的,只是旧版Creo默认嵌入式浏览器内核为IE和Firefox暂时无法使用浏览器的调试工具。Creo在3.0版本后嵌入式浏览器内核加入了Chromium,自此官方说明可以使用Chrome/Chromium内核浏览器进行调试了。进行了一番尝试,在此记录。
Win11的右键菜单虽然相对美观,但使用起来经常要点击显示更多选项
切换更多功能,时间长了实在受不了,搜索下找到了恢复win11的右键菜单为经典模式的方法,在此记录。
使用MFC进行二次开发最大的问题就在于编码。使用的GB2312的编码虽然能保证常规的控件中文输入争取,但一些第三方控件或者新版MFC控件如ProPertyGrid等控件在GB2312中反而也会产生乱码。前文CREO Toolkit二次开发-UNICODE下非模态对话框控件中文输入提供了一种方法,但是存在如果在输入过程中弹出对话框会导致程序无法响应的严重Bug。本文尝试使用钩子的方式重新解决这个问题。
快速隐藏/反向隐藏装配体中的组件主要通过Creo简化表示的方式实现。
简化表示由ProSimprep
结构体进行描述,其类型为pro_model_item
,与ProFeature
、ProGeomitem
等一样。简化表示中信息则由ProSimprepdata
结构体进行表述,其中deflt
为ProSimprepActionType
类型,表示组件默认的简化显示方式。对组件的简化操作由ProSimprepAction
结构体表示,不仅记录组件的简化表示方式,同时还记录了组件在装配体中的ID等信息。创建简化显示流程如下图所示。
一般来说,Toolkit的注册文件需要根据程序存储的位置调整,自己开发当然随便手动修改没有问题,但是如果要正式发布的话,为了操作的友好还是需要能够根据安装位置自动生成注册文件。一个典型的注册文件如下所示: