0

我正在尝试进行服务器端 xml 转换,并正在为我使用 server.MapPath 指定的路径指定要在 global.asa 中使用的模板。对于同一文件夹中的文件,找到了一些文件,其中一个给出了错误。知道为什么吗?

例如,找到第一个,第二个不是 server.MapPath("/website_root/subFolder/XSL/A.xsl")

server.MapPath("/website_root/subFolder/XSL/B.xsl")

错误说msxml3.dll错误'80070003'系统找不到指定的路径

提前致谢。

编辑:问题在于添加的新模板,同一文件夹中文件的旧声明显示正常。下面的代码:

Dim oXSL, oXSLTemplateA, oXSLTemplateB, oXSLTemplateC, oXSLTemplateD, oXSLTemplateE
Set oXSL = Server.CreateObject("MSXML2.FreeThreadedDOMDocument")

'A.xsl
oXSL.load server.MapPath("projectRoot/SubFolder/XSL/A.xsl")
Set oXSLTemplateA = Server.CreateObject("Msxml2.XSLTemplate")
oXSLTemplateA.stylesheet = oXSL
Set Application("ATemplate") = oXSLTemplateA

'B.xsl
Set oXSL = Nothing
Set oXSL = Server.CreateObject("MSXML2.FreeThreadedDOMDocument")
oXSL.load server.MapPath("/projectRoot/SubFolder/XSL/B.xsl")
Set oXSLTemplateB = Server.CreateObject("Msxml2.XSLTemplate")
oXSLTemplateB.stylesheet = oXSL 'ERROR ON THIS LINE
Set Application("BTemplate") = oXSLTemplateB

'C.xsl
Set oXSL = Nothing
Set oXSL = Server.CreateObject("MSXML2.FreeThreadedDOMDocument")
oXSL.load server.MapPath("/projectRoot/SubFolder2/XSL/C.xsl")
Set oXSLTemplateC = Server.CreateObject("Msxml2.XSLTemplate")
oXSLTemplateC.stylesheet = oXSL
Set Application("CTemplate") = oXSLTemplateC

'D.xsl
Set oXSL = Nothing
Set oXSL = Server.CreateObject("MSXML2.FreeThreadedDOMDocument")
oXSL.load server.MapPath("/projectRoot/SubFolder2/XSL/D.xsl")
Set oXSLTemplateD = Server.CreateObject("Msxml2.XSLTemplate")
oXSLTemplateD.stylesheet = oXSL
Set Application("DTemplate") = oXSLTemplateD

'E.xsl
Set oXSL = Nothing
Set oXSL = Server.CreateObject("MSXML2.FreeThreadedDOMDocument")
oXSL.load server.MapPath("/projectRoot/SubFolder2/XSL/E.xsl")
Set oXSLTemplateE = Server.CreateObject("Msxml2.XSLTemplate")
oXSLTemplateE.stylesheet = oXSL 'ERROR ON THIS LINE
Set Application("ETemplate") = oXSLTemplateE

编辑:如果我将 E.xsl 更改为我知道不存在的随机名称。错误是不同的,它会说 msxml3.dll 错误 '80004005' 样式表不包含文档元素。样式表可能是空的,也可能不是格式良好的 XML 文档。

4

1 回答 1

0

xsl 文件正在导入另一个使用完整路径但未找到任何内容的 xsl 文件。我将其更改为相对路径并且它有效。

于 2020-05-12T07:16:38.140 回答