【问题标题】:MSXML XSLT Parser VersionMSXML XSLT 解析器版本
【发布时间】:2012-11-08 15:29:29
【问题描述】:

我有一个 C++ 应用程序,它使用 msxml6.dll 读取 XML 文件并应用 XSLT。通过在我的一个 XSLT 文件中包含以下内容,我确定 MSXML v3.0 用于 XSLT:

<vendor><xsl:value-of select="system-property('xsl:vendor')"/></vendor>
<version><xsl:value-of select="system-property('ms:version')"/></version>

我不明白为什么使用 MSXML v3.0 而不是 MSXML v6.0。应用需要更改哪些内容才能使用 MSXML v6.0?

【问题讨论】:

    标签: c++ msxml msxml6 msxml3


    【解决方案1】:

    创建 msxml 对象时,明确指定版本。在 vba 中是这样的:

    set xml = CreateObject("MSXML2.DomDocument.6.0")
    

    Microsoft 不鼓励在不指定版本的情况下使用 MSXML:Why Version-Independent GUIDs and ProgIDs Were Removed

    【讨论】:

    • 我的 C++ 代码使用 CLSID_DomDocument 而不是 CLSID_DomDocument60。虽然我还没有测试过改变它,但我相信这就是答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多