2009-10-26 2 views
2

Я вызываю пакет SSIS из пользовательского интерфейса Windows .Net. Оба приложения SSIS & .Net созданы в 2008 году. Пакет SSIS хранится в файловой системе. Когда я побежал .Net приложения я получил сообщение об ошибке:Вызов пакета SSIS из .Net

The package failed to load due to error 0xC0011008 "Error loading from XML. No further detailed error information can be specified for this problem because no Events object was passed where detailed error information can be stored.". This occurs when CPackage::LoadFromXML fails.

Exception Подробности -

Microsoft.SqlServer.Dts.Runtime.DtsRuntimeException was unhandled 
    HelpLink="#-1073659847" 
    Message="The package failed to load due to error 0xC0011008 \"Error loading from XML. No further detailed error information can be specified for this problem because no Events object was passed where detailed error information can be stored.\". This occurs when CPackage::LoadFromXML fails.\r\n" 
    Source="" 
    ErrorCode=-1073672184 
    StackTrace: 
     at Microsoft.SqlServer.Dts.Runtime.Application.LoadPackage(String fileName, IDTSEvents events, Boolean loadNeutral) 
     at SSISCall.Form1.Execute_Click(Object sender, EventArgs e) in D:\SSISCall\SSISCall\Form1.cs:line 36 
     at System.Windows.Forms.Control.OnClick(EventArgs e) 
     at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent) 
     at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) 
     at System.Windows.Forms.Control.WndProc(Message& m) 
     at System.Windows.Forms.ButtonBase.WndProc(Message& m) 
     at System.Windows.Forms.Button.WndProc(Message& m) 
     at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) 
     at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) 
     at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg) 
     at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData) 
     at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context) 
     at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context) 
     at SSISCall.Program.Main() in D:\SSISCall\SSISCall\Program.cs:line 17 
     at System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args) 
     at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly() 
     at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) 
     at System.Threading.ThreadHelper.ThreadStart() 
    InnerException: System.Runtime.InteropServices.COMException 
     HelpLink="#-1073659847" 
     Message="The package failed to load due to error 0xC0011008 \"Error loading from XML. No further detailed error information can be specified for this problem because no Events object was passed where detailed error information can be stored.\". This occurs when CPackage::LoadFromXML fails.\r\n" 
     Source="" 
     ErrorCode=-1073672184 
     StackTrace: 
      at Microsoft.SqlServer.Dts.Runtime.Wrapper.ApplicationClass.LoadPackage(String FileName, Boolean loadNeutral, IDTSEvents90 pEvents) 
      at Microsoft.SqlServer.Dts.Runtime.Application.LoadPackage(String fileName, IDTSEvents events, Boolean loadNeutral) 
     InnerException: 

Код, который я использую очень прост:

string packageLocation; 
Package ssisPackage; 
Microsoft.SqlServer.Dts.Runtime. 
Application ssisApplication; 
DTSExecResult ssisPackageResult; 
packageLocation [email protected]"D:\SSISCall\Package.dtsx"; 
ssisApplication =new Microsoft.SqlServer.Dts.Runtime.Application(); 
ssisPackage = ssisApplication.LoadPackage(packageLocation,null); ----Getting error here 
ssisPackageResult = ssisPackage.Execute(); 
Console.WriteLine(ssisPackageResult.ToString()); 
Console.ReadKey(); 

Пожалуйста Suggest.

+0

происходят ли проблема при выполнении пакета из командной строки, другими словами, за пределами .NET приложения? Кроме того, пытается ли пакет загрузить любые файлы или любые другие пакеты? –

ответ

3

У вас есть компоненты SSIS, установленные на компьютере, где вы выполняете этот пакет? Если нет, он не будет работать - см. http://msdn.microsoft.com/en-us/library/ms403348.aspx

Является ли версия SSIS, установленная на компьютере 2008 года? Если нет, он не будет работать - части на 2005 и 2008 годы не являются взаимозаменяемыми.

Является ли привод «D» сопоставленным дисководом? Если это так, ваш код, вероятно, не будет запущен без присмотра (с неавторизованным сеансом пользователя) - вместо этого используйте UNC-пути.

1

Получение точно такой же ошибки при вызове Lame loadPackage.

Этот код работает отлично для SQL 2005.

EnvDTE90 не выглядит, как добавить функциональные возможности модели DTS приложений.

Реферирование как EnvDTE80 и EnvDTE90 не делает никаких

Всё различие
Смежные вопросы