PD12的自动化武器
Author:zfive5(dong)
Email :zfive5@yahoo.com.cn
引子
前些日子,在用pd12画对象模型的时候,由于自己没有仔细看清规范(看来自己视力真的不太好),导致自己的敲入的属性编码,全都命名为Pascal方式了,一个个点击开改吗?(20几个类,200多个属性呀,估计起码也要30分钟) 咋办? 受一位老同事的影响和教育,打算看看有什么懒惰的方法来达成目标,值得庆幸的是PD12支持自动化(就是IDispatch), 当然还有另一种思路没有实践,估计也没有问题,xml分析.
方法
C#例子:
PdCommon.ApplicationClass a = new PdCommon.ApplicationClass();
PdOOM.BaseModel ExistingModel = (PdOOM.BaseModel)a.OpenModel("D://1.oom", PdCommon.OpenModelFlags.omf_DontOpenView|PdCommon.OpenModelFlags.omf_Hidden);
foreach(PdOOM.Package p<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="True" sourcevalue="1" unitname="in">1 <span style="color: blue;">in</span></chmetcnv> ExistingModel.Packages)
{
if(p1.Code == "haha")
{
try
{
foreach (PdOOM.Class c<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="True" sourcevalue="1" unitname="in">1 <span style="color: blue;">in</span></chmetcnv> p4.Classes)
{
if (c1.IsShortcut() == false)
{
foreach (PdOOM.Attribute a<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="True" sourcevalue="1" unitname="in">1 <span style="color: blue;">in</span></chmetcnv> c1.AllAttributes)
{
string sc="";
If (a1.Code.Length > 1)
sc = a1.Code.Substring(0, 1).ToLower() + a1.Code.Substring(1);
else
sc = a1.Code.ToLower();
a1.Code=sc;
}
}
}
goto ZFIVE5_1;
}
}catch(Exception e2)
{
}
}
}
ZFIVE5_1:
ExistingModel.Close(true);
ExistingModel = null;
这个例子调试编写大约花了1个多小时,比我直接修改可能多花点时间,但作为回报熟悉学会了一种新东西的使用,将来其它类似问题也能够作到通用.
如果有需要和可能的话,以后自己编写设计大型程序时,一定会考虑script(自动化).当然xml是更开放的另一种选择.
分享到:
相关推荐
电子-战舰amp精英F103TIM4完全重映射测试PD12PD13PD14PD15.rar,综合电子技术正点原子技术支持板块
pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd教程pd...
python requests接口自动化把登录token保存在文件,实现所有用例登录一次(csdn)————程序.pd
支持 Intel/ARM M1 使用,也支持 MacOS 12,USB、网络一切都是正常的。此工具是免费的,感谢开发者 Lihaoyun6 的付出。 下载完成后安装,安装完成后运行 PD(要登录一下账号!!!如果没有账号,去注册一个 Pd 的...
NET软件测试自动化之道 ,讲述.net的测试框架,自动化技能
PD~42配电自动化终端运维作业指导书作业指导书.doc
PD12.py
有少量pd协议的代码 需搭配我另一个代码使用 仅供参考
USB_PD-master_PD_pd源码_pd协议_dawnd82_USBPD_源码.rar
通过PD检测后,从而来实现雷达测速的功能
传热单元操作机械化自动化设计导则(征求意见稿)共9页.pdf_文档整理可打印.zip
包装单元操作机械化自动化设计导则(征求意见稿)共8页.pdf_文档整理可打印.zip
结晶单元操作机械化自动化设计导则(征求意见稿)共9页.pdf_文档整理可打印.zip
USB_PD-master_PD_pd源码_pd协议_dawnd82_USBPD_源码.zip
pd12.5.part1资料
夏普 Sharp vl-pd3s、vl-pd3h、vl-pd3e摄像机维修服务说明书原理图PCB图
深度报告-20221111-西南证券-豪森股份-688529.SH-汽车自动化装备龙头_新能源业务驱动成长_28页_4mb.pdf 深度报告-20221111-西南证券-豪森股份-688529.SH-汽车自动化装备龙头_新能源业务驱动成长_28页_4mb.pdf 深度...
机械设计制造及其自动化专业“卓越工程师选拔方案共3页.pdf_文档整理可打印.zip
去哪儿网自动化测试系统TARS的设计迭代方案共33页.pdf.zip
在Matlab实现了对PD雷达算法的仿真,最后达到测速测距效果