2012-04-24 5 views
1

У меня возникла проблема с приложением VB.NET, которое пытается выполнить пакет SSIS. У меня есть сервер БД и сервер приложений. Оба в том же домене, каждый из которых полностью видим другому, сети мудры. DB работает под управлением SQL2008 R2, в приложении установлен SSIS 2008 R2. На обоих серверах был применен SQL2008 R2 SP1.Приложение VB.NET не удается выполнить пакет SSIS, получает ошибку COM

Мое приложение (которое работает на моем поле разработки), естественно, включает в себя пакет SSIS, который входит в файл .dtsx в той же папке, что и исполняемый файл. Во время выполнения пакет загружается и выполняется с использованием строки соединения, которая передается в качестве параметра. Я проверил эту строку подключения вне всяких разумных сомнений.

Ошибка заключается в следующем:

Retrieving the COM class factory for component with CLSID {E80FE1DB-D1AA-4D6B-BA7E-040D424A925C} failed due to the following error: 80040154.

имеют подключения клиента и инструменты обратной совместимости установлен И БД и сервер приложений. Некоторые из моих исследований предложили запустить REGSVR32 в файле DTS.DLL, найденном в папке \ binn. Успешно зарегистрировал файл, но он не изменил результаты.

Я действительно в тупике. Любая помощь будет оценена по достоинству.

+0

Какая версия .NET Framework работает на вашем приложении VB.NET? –

ответ

0

Оказалось, что приложение было скомпилировано со ссылкой на SQL2005 ManagedDTS.dll и развертывается в среде SQL 2008. Идентификаторы классов различны. Если у вас возникла эта проблема в приложении .NET, проверьте ссылки и убедитесь, что ваша ссылка на ManagedDTS.DLL использует версию DLL, соответствующую вашей производственной среде.

+0

В случае, если кто-то думает, что я пытаюсь искусственно генерировать репутацию, я провел некоторое исследование этикета, отвечая на мой собственный вопрос, и обнаружил, что это приемлемо: http://meta.stackexchange.com/a/17851 – DWRoelands

Смежные вопросы