我正在尝试在Windows 2012 Essentials服务器上安装.NET 3.5 Framework,但遇到以下错误:HRESULT = 0x80073701 – ERROR_SXS_ASSEMBLY_MISSING
在检查CBS日志之后,在我看来,Microsoft-Windows-ServerCore软件包〜31bf3856ad364e35〜amd64 ~~ 6.2.9200.16384是违规软件包。 这里是日志的一个片段:
2014-12-03 15:57:55, Info CBS Failed to resolve execution chain. [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING] 2014-12-03 15:57:55, Error CBS Failed to process single phase execution. [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING] 2014-12-03 15:57:55, Info CBS WER: Generating failure report for package: Microsoft-Windows-ServerCore-Package~31bf3856ad364e35~amd64~~6.2.9200.16384, status: 0x80073701, failure source: Resolve, start state: Installed, target state: Installed, client id: DISM Package Manager Provider 2014-12-03 15:57:55, Info CBS Not able to query DisableWerReporting flag. Assuming not set... [HRESULT = 0x80070002 - ERROR_FILE_NOT_FOUND] 2014-12-03 15:57:55, Info CBS Added C:\Windows\Logs\CBS\CBS.log to WER report.
编辑:仔细审查CBS日志后,实际的错误似乎是服务器试图安装西class牙语版本的.NET
2014-12-10 08:53:39, Error CSI 0000000b (F) HRESULT_FROM_WIN32(ERROR_SXS_ASSEMBLY_MISSING) #623199# from Windows::ServicingAPI::CCSITransaction::ICSITransaction_PinDeployment(Flags = 0, a = Microsoft-Windows-NetFx3-Deployment-LanguagePack, Version = 6.2.9200.16384, pA = PROCESSOR_ARCHITECTURE_AMD64 (9), Culture = [l:10{5}]"es-ES", VersionScope = 1 nonSxS, PublicKeyToken = {l:8 b:31bf3856ad364e35}, Type neutral, TypeName neutral, PublicKey neutral, cb = (null), s = (null), rid = [93]"Microsoft-Windows-NetFx3-Server-OC-Package~31bf3856ad364e35~amd64~es-ES~6.2.9200.16384.NetFx3", rah = (null), manpath = (null), catpath = (null), ed = 0, disp = 0)[gle=0x80073701]
“微软Windows的NetFx3 – 服务器 – OC-包〜31bf3856ad364e35〜AMD64〜ES-ES〜6.2.9200.16384.NetFx3”
我find了解决我的问题。 为了详细阐述我今天早些时候做的编辑,CBS日志显示DISM试图安装英文和西class牙语版本的.NET 3.5框架,下面给你一个更好的想法。
2014-12-10 08:53:39, Info CBS Exec: Resolving component from existing package; passing NULL manifest path to PinDeployment and hoping things haven't been scavenged. 2014-12-10 08:53:39, Info CBS Exec: Resolving Package: Microsoft-Windows-IIS-WebServer-Core-Package~31bf3856ad364e35~amd64~es-ES~6.2.9200.16384, Update: IIS-UAL, PinDeployment: amd64_microsoft-windows-i..oyment-languagepack_31bf3856ad364e35_6.2.9200.16384_es-es_5330c9534689b90c 2014-12-10 08:53:39, Info CBS Exec: 315 deployments need bulk staging 2014-12-10 08:53:39, Error CSI 00000009@2014/12/10:13:53:39.542 (F) base\wcp\componentstore\csd_locking.cpp(216): Error STATUS_SXS_ASSEMBLY_MISSING originated in function CCSDirectTransaction::LockComponent expression: (null) [gle=0x80004005] 2014-12-10 08:53:39, Info CBS Added C:\Windows\Logs\CBS\CBS.log to WER report. 2014-12-10 08:53:39, Info CBS Added C:\Windows\Logs\CBS\CbsPersist_20141210133834.log to WER report. 2014-12-10 08:53:39, Info CBS Added C:\Windows\Logs\CBS\CbsPersist_20141210094833.log to WER report. 2014-12-10 08:53:39, Info CBS Added C:\Windows\Logs\CBS\CbsPersist_20141210083832.log to WER report. 2014-12-10 08:53:39, Info CBS Added C:\Windows\Logs\CBS\CbsPersist_20141210020831.log to WER report. 2014-12-10 08:53:39, Info CBS Added C:\Windows\Logs\CBS\CbsPersist_20141209210827.log to WER report. 2014-12-10 08:53:39, Info CBS Not able to add pending.xml.bad to Windows Error Report. [HRESULT = 0x80070002 - ERROR_FILE_NOT_FOUND] 2014-12-10 08:53:39, Info CBS Not able to add SCM.EVM to Windows Error Report. [HRESULT = 0x80070002 - ERROR_FILE_NOT_FOUND] 2014-12-10 08:53:39, Error CSI 0000000a (F) STATUS_SXS_ASSEMBLY_MISSING #623313# from CCSDirectTransaction::OperateEnding at index 0 of 1 operations, disposition 2[gle=0xd015000c] 2014-12-10 08:53:39, Error CSI 0000000b (F) HRESULT_FROM_WIN32(ERROR_SXS_ASSEMBLY_MISSING) #623199# from Windows::ServicingAPI::CCSITransaction::ICSITransaction_PinDeployment(Flags = 0, a = Microsoft-Windows-NetFx3-Deployment-LanguagePack, Version = 6.2.9200.16384, pA = PROCESSOR_ARCHITECTURE_AMD64 (9), Culture = [l:10{5}]"es-ES", VersionScope = 1 nonSxS, PublicKeyToken = {l:8 b:31bf3856ad364e35}, Type neutral, TypeName neutral, PublicKey neutral, cb = (null), s = (null), rid = [93]"Microsoft-Windows-NetFx3-Server-OC-Package~31bf3856ad364e35~amd64~es-ES~6.2.9200.16384.NetFx3", rah = (null), manpath = (null), catpath = (null), ed = 0, disp = 0)[gle=0x80073701] 2014-12-10 08:53:39, Info CBS Failed to pin deployment while resolving Update: Microsoft-Windows-NetFx3-Server-OC-Package~31bf3856ad364e35~amd64~es-ES~6.2.9200.16384.NetFx3 from file: (null) [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING] 2014-12-10 08:53:39, Info CBS Failed to bulk stage deployment manifest and pin deployment for package:Microsoft-Windows-ADFS-WebAgents-Package~31bf3856ad364e35~amd64~~6.2.9200.16384 [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING] 2014-12-10 08:53:39, Info CSI 0000000c@2014/12/10:13:53:39.558 CSI Transaction @0xd5456110a0 destroyed 2014-12-10 08:53:39, Info CBS Perf: Resolve chain complete. 2014-12-10 08:53:39, Info CBS Failed to resolve execution chain. [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING] 2014-12-10 08:53:39, Error CBS Failed to process single phase execution. [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING] 2014-12-10 08:53:39, Info CBS WER: Generating failure report for package: Microsoft-Windows-ServerCore-Package~31bf3856ad364e35~amd64~~6.2.9200.16384, status: 0x80073701, failure source: Resolve, start state: Installed, target state: Installed, client id: DISM Package Manager Provider 2014-12-10 08:53:39, Info CBS Not able to query DisableWerReporting flag. Assuming not set... [HRESULT = 0x80070002 - ERROR_FILE_NOT_FOUND] 2014-12-10 08:53:39, Info CBS Added C:\Windows\Logs\CBS\CBS.log to WER report. 2014-12-10 08:53:39, Info CBS Added C:\Windows\Logs\CBS\CbsPersist_20141210133834.log to WER report. 2014-12-10 08:53:39, Info CBS Added C:\Windows\Logs\CBS\CbsPersist_20141210094833.log to WER report. 2014-12-10 08:53:39, Info CBS Added C:\Windows\Logs\CBS\CbsPersist_20141210083832.log to WER report. 2014-12-10 08:53:39, Info CBS Added C:\Windows\Logs\CBS\CbsPersist_20141210020831.log to WER report. 2014-12-10 08:53:39, Info CBS Added C:\Windows\Logs\CBS\CbsPersist_20141209210827.log to WER report. 2014-12-10 08:53:39, Info CBS Not able to add %windir%\winsxs\pending.xml.bad to WER report. [HRESULT = 0x80070002 - ERROR_FILE_NOT_FOUND] 2014-12-10 08:53:39, Info CBS Restored system sleep block state: 0x80000000 2014-12-10 08:53:39, Info CBS Exec: Processing complete. Session: 30413952_2937928284, Package: Microsoft-Windows-ServerCore-Package~31bf3856ad364e35~amd64~~6.2.9200.16384 [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING] 2014-12-10 08:53:39, Error CBS Failed to perform operation. [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING] 2014-12-10 08:53:39, Info CBS Session: 30413952_2937928284 finalized. Reboot required: no [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING] 2014-12-10 08:53:39, Info CBS Failed to FinalizeEx using worker session [HRESULT = 0x80073701]
在上面的输出中,您可以看到只有西class牙文包装上出现错误。 我检查了语言资源的存储位置“C:\ Windows * Language *”,发现西class牙语语言包“C:\ Windows \ es-ES”有一个文件夹,但文件夹是空的。信息很清楚,一个语言包已经被错误地删除了,或者安装尝试了,从来没有完成。以下方式,我想出的最简单的解决scheme是重新安装正确的语言包,包括必要的依赖DISM需求。
解决我的问题的步骤如下:
执行以下命令来安装所需的语言包。 所提供的命令将安装西class牙语语言包,您应该根据您的具体实例进行修改
dism /online /add-package /packagepath:E:\langpacks\es-es\lp.cab
注意:“E”是Windows决定挂载ISO的驱动器号,您的milage可能会有所不同。
安装语言包后,服务器将重新启动。