Я застрял на этом.Я надеюсь, что кто-то здесь имеет некоторый опыт с этим.Здесь ситуация.Я настроил веб-страницу, которая позволяет пользователям загружать плоские файлы для загрузки в SQL Server 2005 с помощью служб SSIS.В зависимости от типа файла существует два процесса SSIS.Решение о том, какой процесс SSIS использовать, принимается пользователем на веб-сайте.
Как только файл загружен пользователем, процесс запускается объектом .NET Process.Командная строка - это обычная командная строка, которую вы ожидаете увидеть для запуска dtexec с определенным файлом SSIS, который устанавливает пару переменных.Например:
dtexec / f / De / set value
Анонимный пользователь ASP.NET работает как учетная запись пользователя домена.Все файлы пакета служб SSIS для обоих процессов служб SSIS находятся в одном каталоге.Учетная запись пользователя домена имеет полные права на этот каталог.Тот же метод в ASP.NET запускает любой из процессов.Единственное отличие - это WebMethod, вызываемый веб-сайтом.Один WebMethod для каждого типа.Именно в этих WebMethods уникальные аргументы назначаются тексту командной строки для служб SSIS.
Здесь я столкнулся с проблемой.При запуске процесса веб-сайта «1» он работает нормально, но процесс «2» завершается с ошибкой, упомянутой выше.Когда я получаю стандартный вывод, я получаю следующее:
Microsoft (R) SQL Server Execute Package Utility версии 9.00.4035.00 для 32-разрядной версии Copyright (C) Microsoft Corp 1984-2005.Все права защищены.
Начато: 10:34:14 AM Не удалось создать DTS.Application из-за ошибки 0x800401F3 Начато: 10:34:14 Завершено: 10:34:14 Истекшее время: 0,016 секунд
Я не понимаю, как все может быть почти идентично, но будет работать только один.И последнее: оба метода работают нормально, когда я тестирую прямо из Visual Studio.Я полагаю, что это должно быть что-то с использованием учетной записи анонимного пользователя, но я не могу понять, почему один процесс будет работать, а другой не будет работать, когда они так похожи.
Любая помощь будет принята с благодарностью.
Роб