creo 二次开发 求助大神如何修改装配体及其内子件的名称

yunsongblue 2018-08-14 11:05:29
creo 二次开发 现在想修改装配体及其内所有子件的名称,在装配体及其内子件的名称加入后缀编号
(例如原名称为:aig31-m8-l12.prt.1
这里修改为:aig31-m8-l12_001.prt.1
这里的后缀001,是视模型生成次数而改变的,所以是个变量)

使用了ProMdlRename函数,可是发现只能修改单一元件名称(装配体只能修改装配体名称,而其内子件的名称无法一起修改)

又使用了宏函数的方法,但发现由于想要加的后缀是一个变量,尝试了下发现宏中变量无效

想求助各位大神,有什么函数可以同时改变装配体及其内所有子件的名称么?
在宏函数中是否可以使用变量,如何实现,万分感谢!

下面是尝试的宏函数:
strMacro ="~ Activate `assyrename` `OpenBtn`;";
ProStringToWstring (w_macro,strMacro.GetBuffer());
ProMacroLoad(w_macro);
strMacro ="~ Activate `assyrename` `GenNamesBtn`;";
ProStringToWstring (w_macro,strMacro.GetBuffer());
ProMacroLoad(w_macro);
strMacro ="~ Update `assyrename` `Input_suffix` `_0`;";
ProStringToWstring (w_macro,strMacro.GetBuffer());
ProMacroLoad(w_macro);
strMacro ="~ Input `assyrename` `Input_suffix` `_0`;";
ProStringToWstring (w_macro,strMacro.GetBuffer());
ProMacroLoad(w_macro);
strMacro ="~ Activate `assyrename` `SelAllPush`;";
ProStringToWstring (w_macro,strMacro.GetBuffer());
ProMacroLoad(w_macro);
strMacro ="~ Activate `file_saveas` `OK`;";
ProStringToWstring (w_macro,strMacro.GetBuffer());
ProMacroLoad(w_macro);
strMacro ="~ Update `file_saveas` `Inputname` `AEG01-4460-1_YHD`;";
ProStringToWstring (w_macro,strMacro.GetBuffer());
ProMacroLoad(w_macro);
strMacro ="~ Activate `file_saveas` `ph_list.Filelist` 1 `tuzhecaozhuo`;";
ProStringToWstring (w_macro,strMacro.GetBuffer());
ProMacroLoad(w_macro);
strMacro ="~ Activate `file_saveas` `desktop_pb`;";
ProStringToWstring (w_macro,strMacro.GetBuffer());
ProMacroLoad(w_macro);
strMacro ="~ Command `ProCmdModelSaveAs` ;";
ProStringToWstring (w_macro,strMacro.GetBuffer());
ProMacroLoad(w_macro);
strMacro ="~ Close `main_dlg_cur` `appl_casc`;";
ProStringToWstring (w_macro,strMacro.GetBuffer());
ProMacroLoad(w_macro);
strMacro ="~ Activate `file_open` `Ph_list.Filelist` 1 `aeg01-4460-1.asm`;";
ProStringToWstring (w_macro,strMacro.GetBuffer());
ProMacroLoad(w_macro);
strMacro ="~ Activate `file_open` `Ph_list.Filelist` 1 `tuzhe`;";
ProStringToWstring (w_macro,strMacro.GetBuffer());
ProMacroLoad(w_macro);
strMacro ="~ Activate `file_open` `desktop_pb`;";
ProStringToWstring (w_macro,strMacro.GetBuffer());
ProMacroLoad(w_macro);
strMacro ="~ Command `ProCmdModelOpen` ;";
ProStringToWstring (w_macro,strMacro.GetBuffer());
ProMacroLoad(w_macro);
ProMacroExecute();
...全文
649 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

16,470

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧