关于调用DTS包的代码

王朝other·作者佚名  2007-06-16
窄屏简体版  字體: |||超大  

数据库

关于调用DTS包的代码

失败,没什么整理代码

把调用DTS包的代码贴出来,也省得大家去查帮助了(需要更像喜请查看sql server帮助)

以下代码根据sql server中vb代码转化

#import "C:\\Program Files\\Microsoft SQL Server\\80\\tools\\binn\\dtspkg.dll" rename("EOF","IsEOF") rename("BOF","IsBOF")

void CChildView::OpenDtsFile(CString strPathName)

{

//企业管理器//数据转换服务//本地包//另存为DTS文件

DTS::_Package2Ptr m_pPackage2;

DTS::TaskPtr m_pTask;

DTS::StepPtr m_pStep;

DTS::ExecutePackageTaskPtr m_pExeTask;

try

{

m_pPackage2.CreateInstance(__uuidof(DTS::Package2));

m_pPackage2->FailOnError=true;

m_pStep=m_pPackage2->Steps->New();

m_pTask=m_pPackage2->Tasks->New(_bstr_t("DTSExecutePackageTask"));

m_pExeTask=m_pTask->CustomTask;

m_pExeTask->FileName=_bstr_t(strPathName);

m_pExeTask->Name=_bstr_t("ExePkgTask");

m_pStep->TaskName=m_pExeTask->Name;

m_pStep->Name=_bstr_t("ExePkgStep");

m_pStep->ExecuteInMainThread=true;

m_pPackage2->Steps->Add(m_pStep);

m_pPackage2->Tasks->Add(m_pTask);

m_pPackage2->Execute();

CString strMsg;

strMsg.Format("%s,数据转换%d个任务,%d个步骤成功",

strPathName,m_pPackage2->Tasks->Count,m_pPackage2->Steps->Count);

AfxMessageBox(strMsg);

m_pExeTask=NULL;

m_pTask.Release();

m_pTask=NULL;

m_pStep.Release();

m_pStep=NULL;

m_pPackage2.Release();

m_pPackage2=NULL;

}

catch(_com_error &e)

{

AfxMessageBox(_bstr_t(e.ErrorMessage())+_bstr_t(e.Description())); }

}

CSDN VC编程经验总结

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航