首页 SW二次开发教程:第一章第一节:文件操作之获得文件的历史版本信息

SW二次开发教程:第一章第一节:文件操作之获得文件的历史版本信息

小白鼠 2019-08-04 08:01:48 0 4294

//测试代码

HRESULT retval; 
CComPtr<IModelDoc2>pModel; 
retval = m_iSldWorks_dlg->get_IActiveDoc2(&pModel); 
if(pModel == NULL||retval!=S_OK) 
{
 AfxMessageBox(_T( "获取活动文档失败")); 
return ; 
} 
//历史版本信息数组 
BSTR*versionHistStrings=NULL; 
//数组大小 
int versHistCount=0; 
//获得文件的历史版本信息数组大小 
retval = pModel->IGetVersionHistoryCount(&versHistCount); 
if(versHistCount == 0||retval!=S_OK) 
{
 pModel=NULL;
 return;
 }
 //申请内存
 versionHistStrings=new BSTR[versHistCount];
 //获得文本版本信息
 retval = pModel->IVersionHistory(versionHistStrings); 
if(versionHistStrings == NULL||retval!=S_OK)
 {
 delete []versionHistStrings;
 pModel=NULL; return;
 }
 CString tempStr=_T("");
 for (int i=0;i<versHistCount;++i)
 {
 //将BSTR类型字符转换为CString 
CString tempStr2(versionHistStrings[i]); 
tempStr+=tempStr2+_T("\r\n");
 }
 AfxMessageBox(tempStr);
 delete []versionHistStrings;
 pModel=NULL;


发表评论