У меня есть пакет служб SSIS, который считывает файл Excel (источник потока данных) и передает данные на SQL Server с помощью элемента потока данных назначения OLEDB. Этот пакет выполняется приложением .Net с использованием объектной модели служб SSIS. Пакет хранится в файловой системе в подпапке приложения.
Пакет отлично работает как на моей машине для разработки, так и на тестовой машине. На этих машинах установлен win2k3 32bit. Служба SSIS была создана в 32-битной среде BIDS.
При развертывании этого приложения на рабочей машине со стандартной версией win2k3 x64 я получаю сообщение об ошибке
Произошла ошибка OLE DB. Код ошибки: 0x80040154. Доступна запись OLE DB. Источник: «Компоненты службы Microsoft OLE DB». Результат: 0x80040154 Описание: «Класс не зарегистрирован».
Ошибка вызова метода AcquireConnection для диспетчера соединений «Диспетчер соединений Excel» с кодом ошибки 0xC0202009.
компонент «Источник Excel» (630) не прошел проверку и вернул код ошибки 0xC020801C.
Я читал в других постах, что установка свойства Run64BitRuntime проекта (во время разработки) решает проблему при запуске его из BIDS.
Как установить это свойство через объектную модель служб SSIS.
Вот часть кода, которая выполняет пакет
_application = New Application()
_package = New Package()
_package = _application.LoadPackage(packageName, Nothing)
_updateResult = _package.Execute()
Спасибо
Масуд