错误0xC0011008程序包无法加载

时间:2018-04-26 10:24:00

标签: sql-server windows-services windows-server-2012 sql-agent-job ssis-2014

我在执行SQL Server Agent个套餐时遇到SSIS的奇怪行为。

我的工作包括许多步骤(主要是SSIS包)。有些步骤大多每天都会失败,即使所有步骤的配置都相同。

我尝试删除/创建作业,删除/创建SQL Server Agent Proxy但没有成功。

我发现失败的步骤和成功的步骤之间没有任何区别。

这是SQL Server代理返回的错误:

  

由于错误0xC0011008而导致程序包无法加载"从XML加载时出错。不能为此问题指定更详细的错误信息,因为没有传递事件对象的详细错误信息

SQL Server版本:2014

SSIS版本:2014

编辑:

在事件日志中,我发现Information Message的{​​{1}}说:

  

Windows检测到您的注册表文件仍在被其他应用程序或服务使用。该文件现在将被卸载。保存您的注册表文件的应用程序或服务可能无法正常运行

     

进程5924(\ Device \ HarddiskVolume2 \ Program Files \ Microsoft SQL Server \ 120 \ DTS \ Binn \ DTExec.exe)已打开密钥\ REGISTRY \ USER \ SXX-XX-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-XXXX \ Control Panel \国际

     

进程5924(\ Device \ HarddiskVolume2 \ Program Files \ Microsoft SQL Server \ 120 \ DTS \ Binn \ DTExec.exe)已打开键\ REGISTRY \ USER \ SXX-XX-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXXX-XXXX \ Software \微软\的Windows \ CurrentVersion

User Profile Service对应于用于执行SQL作业步骤的SID。当SQL代理中发生错误时,时间戳对应是相同的。

我认为这是导致步骤失败的原因。

我们可以阻止Windows卸载此注册表吗?

1 个答案:

答案 0 :(得分:0)

错误确实是由User Profile Service强制卸载注册表引起的。

对我有用的解决方案是从" 未配置"更改策略设置Do not forcefully unload the user registry at user logoff已启用

  1. 启动本地组策略编辑器(gpedit.msc

  2. 转到计算机配置> 管理模板> 系统> 用户个人资料

  3. 设置" 不要在用户注销时强制卸载用户注册表"启用

  4. 运行gpupdate命令。

  5. 详情请见:https://support.microsoft.com/en-us/help/2287297/a-com-application-may-stop-working-on-windows-server-2008-when-a-user