在水晶报表内添加OLE链接对象,然后对其进行操作

 m_Application.CreateInstance (__uuidof(Application));
 _bstr_t strRptName = "E://Cristal//MultDetailsExamp//DataAndPic.rpt";
 _bstr_t strPicName = "E://Cristal//MultDetailsExamp//AreaStudytemp.bmp";

//不知道为什么,如果在打开报表之前,对新修改的图片不进行大小调整的话,就会弹出对话框,说链接不正确之类的,不知道为什么,期待解决

 HINSTANCE hInt=ShellExecute(this->m_hWnd,"open","kodakimg.exe",strPicName,"", SW_SHOW );
 

 m_Report =m_Application->OpenReport((_bstr_t)strRptName);

//修改报表中已经存在的图片OLE链接
 pChartObj = NULL;
 pSections  = NULL;
 pSection   = NULL;
 pCROleObj  = NULL;
 _variant_t var;
 VariantInit(&var);
 var.vt = VT_I2;
 var.iVal = 1;
 _bstr_t bstr;

 long lg;

 pSection = m_Report->GetAreas()->GetItem("RH")->GetSections()->GetItem(var);
 bstr =  pSection->GetCssClass();
 bstr = pSection->GetName();
 pReportObj = pSection->ReportObjects->GetItem("Pic1");
 if (pReportObj->Kind == crOleObject)
 {
  pCROleObj = pReportObj;
 }
 
 pReportObj->Name = "水晶报表测试图例2";

//。。。。。。。。。。。

你可能感兴趣的:(测试,report,null,application,报表)