creo 二次开发 求助大神如何修改装配体及其内子件的名称
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();