PRB: HRESULT C00CE56E MSXML 与"系统不支持指定的编码"错误信息
从 Web 服务器加载远程的 XML 文档,通过使用 XMLHTTP 或 IXMLDocument::Load 时, 您可能会收到以下错误消息:
HRESULT c00ce56e
系统不支持指定的编码。
当您使用一个基于 Java 的中间层应用程序框架时,该错误与最普遍。
作为的版本 2.6,MSXML 传递通过 Mlang.dll 以验证其编码的所有 XML 文档。如果 Mlang.dll 遇到非标准编码字符串,则它将返回错误。
"iso8859_1"拉丁语-1 字符编码在 Java 语言中,类库中的字符串的规范化的表示形式。由 Internet 指派编号机构,已定义的标准但是,是"ISO-8859-1"的不是已接受的别名。
若要解决此问题,请执行下面的任一操作:
更改字符编码相关 Java 服务器环境中从"iso8859_1"ISO-8859-1 的字符串。 -或者-
使用 IXMLDOMDocument::get_responseBody 作为原始缓冲区的字节中检索数据。如果您正在开发中 Microsoft Visual c + + 应用程序,您可能会为您的数据定义一个 HGLOBAL 句柄,并使用 CreateStreamOnHGlobal 进行处理的数据更容易。
此行为是设计使然。
这篇文章中的信息适用于:
Microsoft XML Parser 2.6
Microsoft XML Parser 3.0
Microsoft XML Parser 3.0 Service Pack 1
Microsoft XML Core Services 4.0
来源:http://support.microsoft.com/kb/304625/zh-cn