我遇到了试图执行SSIS包的VB.NET应用程序的问题。我有一个数据库服务器和一个应用服务器。两者都在同一个域中,每个域都完全可见,网络明智。 DB正在运行SQL2008 R2,应用程序已安装SSIS 2008 R2。两台服务器都已应用SQL2008 R2 SP1。
我的应用程序(自然地在我的开发框上运行)包含一个SSIS包,它作为.dtsx文件包含在与可执行文件相同的文件夹中。在运行时,使用作为参数传入的连接字符串加载和执行包。我已经验证了这个连接字符串超出了所有合理的怀疑。
错误如下:
检索具有CLSID {E80FE1DB-D1AA-4D6B-BA7E-040D424A925C}的组件的COM类工厂因以下错误而失败:80040154。
数据库和应用服务器都安装了客户端连接和向后兼容工具。我的一些研究建议在\ binn文件夹中找到的DTS.DLL文件上运行REGSVR32。已成功注册该文件,但它不会更改结果。
我真的很难过这个。任何帮助将不胜感激。
答案 0 :(得分:0)
事实证明,应用程序已经编译时引用了SQL2005 ManagedDTS.dll,并且正在部署到SQL 2008环境中。班级ID不同。如果您在.NET应用程序中遇到此问题,请检查引用并确认您对ManagedDTS.DLL的引用是使用与您的生产环境匹配的DLL版本。