代码之家  ›  专栏  ›  技术社区  ›  Stephane Rolland

IXSLTemplate::putref\u样式表返回E\u INVALIDARG

  •  1
  • Stephane Rolland  · 技术社区  · 14 年前

    IXSLTemplate::putref_stylesheet 不记录任何错误,除非E\ U失败。

    但就我而言 putref_stylesheet 退货 E_INVALIDARG GetErrorInfo() 告诉我“论点无效”是多余的。所以我没有留下太多的信息。

    然而,我的代码非常接近我在web和msdn上找到的所有示例。

    void xsltProcessing(MSXML2::IXMLDOMDocument* pXmlDoc, MSXML2::IXMLDOMDocument * pXslDoc)
    {
        IXSLTemplatePtr pTemplate;
        pTemplate.CreateInstance( _T( "Msxml2.XSLTemplate" ));
        pTemplate->putref_stylesheet(pXslDoc);
        //...
    }
    

    因为没有太多的文档 . 你知道它回来会出什么问题吗 E d u INVALIDARG ?

    我的 pXslDoc 是一个 IXMLDOMDocument 我已经成功地从静态常量字符串加载了。

    有什么线索吗?(我想这是个很模糊的问题,但我已经找了好几个小时了)

    1 回复  |  直到 14 年前
        1
  •  1
  •   Phil Booth    14 年前

    你在装货吗 pXslDoc 可能是异步的?

    的默认行为 IXMLDOMDocument 对象是异步加载的,因此 pXslDoc公司 您呼叫时尚未完成加载 putref_stylesheet() .

    pXslDoc公司

    pXslDoc->put_async(VARIANT_FALSE);