很多人做过了,这里只是重复劳动。清除旧版本大概用三种形式:
调用Creo自带的purge.exe程序;
 
打开模型调用Creo清除旧版本的宏命令;
 
比对模型的版本号,通过程序依次删除。
 
本文采用的是第三种方法,实现一键删除工作目录下prt、asm以及drw的旧版本文件,但是删除文件操作本例是放到回收站,稍微安全点。代码公开,需要的人可以随便根据自己的环境修改编译。删除文件到回收站代码如下,函数第二个参数为true是直接删除,false表示移动到回收站:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
   | void Recycle(CString pszPath, BOOL bDelete) {   SHFILEOPSTRUCT shDelFile;   memset(&shDelFile, 0, sizeof(SHFILEOPSTRUCT));   shDelFile.fFlags |= FOF_SILENT;   shDelFile.fFlags |= FOF_NOERRORUI;   shDelFile.fFlags |= FOF_NOCONFIRMATION;ail.   TCHAR buf[_MAX_PATH + 1];   strcpy_s(buf, pszPath);   buf[_tcslen(buf) + 1] = 0;   shDelFile.wFunc = FO_DELETE;   shDelFile.pFrom = buf;   shDelFile.pTo = NULL;   if (bDelete)   {     shDelFile.fFlags &= ~FOF_ALLOWUNDO;   }   else   {     shDelFile.fFlags |= FOF_ALLOWUNDO;   }   SHFileOperation(&shDelFile); }
   | 
 
完整代码可在Github.com下载。代码在VS2010,Creo 2.0 M060 X64下编译通过。