关于调用DTS包的代码

数据库
关于调用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编程经验总结

 

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值