今天碰到一个关于WSUS控制台无法查看和刷新计算机组的问题,用户只要在计算机组里面刷新计算,选择“任何”类型的计算机,WSUS控制台会马上崩溃,如下图:
古交网站制作公司哪家好,找创新互联!从网页设计、网站建设、微信开发、APP开发、自适应网站建设等网站项目制作,到程序开发,运营维护。创新互联从2013年开始到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联。
转到计算机应用程序日志,会发现如下日志记录:
WSUS 管理控制台遇到意外错误。这可能是暂时错误;请尝试重新启动该管理控制台。如果此错误仍然存在, 请尝试通过删除 %appdata%\Microsoft\MMC\ 下的 wsus 文件来删除该控制台的永久性首选项。 WSUS 管理控制台遇到意外错误。这可能是暂时错误;请尝试重新启动该管理控制台。如果此错误仍然存在,
请尝试通过删除 %appdata%\Microsoft\MMC\ 下的 wsus 文件来删除该控制台的永久性首选项。 System.Xml.XmlException – “口”(十六进制值 0x16)是无效的字符。 第 1 行,位置 7363841。
Source System.Xml Stack Trace: 在 System.Xml.XmlTextReaderImpl.Throw(String res, String[] args) 在 System.Xml.XmlTextReaderImpl.ParseNumericCharRefInline(Int32 startPos, Boolean expand, StringBuilder internalSubsetBuilder, Int32& charCount, EntityType& entityType) 在 System.Xml.XmlTextReaderImpl.ParseCharRefInline(Int32 startPos, Int32& charCount, EntityType& entityType) 在 System.Xml.XmlTextReaderImpl.ParseText(Int32& startPos, Int32& endPos, Int32& outOrChars) 在 System.Xml.XmlTextReaderImpl.ParseText() 在 System.Xml.XmlTextReaderImpl.ParseElementContent() 在 System.Xml.XmlReader.ReadStartElement() 在 System.Xml.Serialization.XmlSerializationReader.ReadStringValue() 在 System.Xml.Serialization.XmlSerializationReader.ReadTypedPrimitive(XmlQualifiedName type, Boolean elementCanBeType) 在 Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderApiRemotingCompressionProxy.Read1_Object(Boolean isNullable, Boolean checkType) 在 Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderApiRemotingCompressionProxy.Read2_GenericReadableRow(Boolean isNullable, Boolean checkType) 在 Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderApiRemotingCompressionProxy.Read339_Item() 在 Microsoft.Xml.Serialization.GeneratedAssembly.ArrayOfObjectSerializer623.Deserialize(XmlSerializationReader reader) 在 System.Xml.Serialization.XmlSerializer.Deserialize(XmlReader xmlReader, String encodingStyle, XmlDeserializationEvents events) ** this exception was nested inside of the following exception ** System.InvalidOperationException -- XML 文档(1, 7363841)中有错误。
Source System.Xml Stack Trace: 在 System.Xml.Serialization.XmlSerializer.Deserialize(XmlReader xmlReader, String encodingStyle, XmlDeserializationEvents events) 在 System.Xml.Serialization.XmlSerializer.Deserialize(XmlReader xmlReader, String encodingStyle) 在 System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall) 在 System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters) 在 Microsoft.UpdateServices.Internal.ApiRemoting.ExecuteSPSearchComputers(String computerTargetScopeXml) 在 Microsoft.UpdateServices.Internal.DatabaseAccess.AdminDataAccessProxy.ExecuteSPSearchComputers(String computerTargetScopeXml) 在 Microsoft.UpdateServices.Internal.BaseApi.ComputerTarget.SearchComputerTargets(ComputerTargetScope searchScope, UpdateServer updateServer) 在 Microsoft.UpdateServices.UI.AdminApiAccess.BulkComputerPropertiesCache.GetAndCacheComputers(ExtendedUpdateScope updateScope, ComputerTargetScope computerTargetScope) 在 Microsoft.UpdateServices.UI.SnapIn.Pages.ComputersListPage.GetListRows()
|
|
仔细查看上面的错误,请注意
说明控制台在获取数据库数据的时候,数据库中包含了非法字符,导致WSUS在呈现数据的时候出现的错误,无法解释非法字符。控制台直接崩溃。这种情况,在SCCM中也可能 会出现,主要的原因是由于,客户端计算机中的某些信息,这些信息中包含了非法字符。
解决办法:通过SQL管理工具,打开WSUS数据库中的dbo.tbComputerTargetDetail 表,编辑所有行(如何编辑所有行自行百度);返回结果如下,点击左上角全选数据,Ctrl+C复制所有数据,通过Notdpad++打开,复制到Notepad++中去
搜索
中显示的那个方框字符,搜索方法就是,在日志中复制这个字符,然后在Notepad++中粘贴,搜索。
找到这个字符后,有个对应的TargetID,根据ID,在数据库中找到对应的行,然后修改非法字符,填入一个合法字符,必须DELL或者HP。关闭SQL管理工具。打开控制台,故障修复。
分享标题:WSUS控制台由于程序异常崩溃
文章位置:
http://cdkjz.cn/article/pgcgei.html