白
白衣书生
Unregistered / Unconfirmed
GUEST, unregistred user!
用D6写一个处理XML和XSL的东东,用于生成HTM,程序来自:
http://www.8421.org/download.php?id=179
主要代码如下:
uses
ComObj;
procedure TForm1.Button1Click(Sender: TObject);
var
xmlobj, xslobj: Variant;
sl: TStringList;
begin
sl := TStringList.Create;
xmlobj := CreateOLEObject('MSXML2.DOMDocument');
xmlobj.async := false;
xmlobj.load('page.xml');
xslobj := CreateOLEObject('MSXML2.DOMDocument');
xslobj.async := false;
xslobj.load('dispq_.xsl');
sl.Text := xmlobj.transformNode(xslobj);
sl.SaveToFile('test.htm');
xmlobj := unAssigned;
xslobj := unAssigned;
end;
发现执行到 sl.Text := xmlobj.transformNode(xslobj);
这句时会出错。
出现“Keyword xsl:for-each may not contain xsl:result-document.”这个错误提示。
(关键字 xsl:for-each 可能不包含 xsl:result-document)
是什么原因?如何解决?
是不是XML解析器不支持 xsl:result-document 的原因?? 盼望大侠指点。
我安装的是MSXML 3(就是大富翁论坛提示需要安装的那个)
http://www.8421.org/download.php?id=179
主要代码如下:
uses
ComObj;
procedure TForm1.Button1Click(Sender: TObject);
var
xmlobj, xslobj: Variant;
sl: TStringList;
begin
sl := TStringList.Create;
xmlobj := CreateOLEObject('MSXML2.DOMDocument');
xmlobj.async := false;
xmlobj.load('page.xml');
xslobj := CreateOLEObject('MSXML2.DOMDocument');
xslobj.async := false;
xslobj.load('dispq_.xsl');
sl.Text := xmlobj.transformNode(xslobj);
sl.SaveToFile('test.htm');
xmlobj := unAssigned;
xslobj := unAssigned;
end;
发现执行到 sl.Text := xmlobj.transformNode(xslobj);
这句时会出错。
出现“Keyword xsl:for-each may not contain xsl:result-document.”这个错误提示。
(关键字 xsl:for-each 可能不包含 xsl:result-document)
是什么原因?如何解决?
是不是XML解析器不支持 xsl:result-document 的原因?? 盼望大侠指点。
我安装的是MSXML 3(就是大富翁论坛提示需要安装的那个)