这主要是一个Delphi语法相关的问题。调用 OLE 对象的方法时,我需要将参数设置为 True。
我需要在Word Automation中设置(这是来自词参考 http://support.microsoft.com/kb/285885/en-us):
wdApp.Quit SaveChanges:=wdDoNotSaveChanges
作为一个示例,我想执行以下操作的虚拟程序(请注意 WordApp.Quit!):
Procedure GetWordVersion;
var
WordApp: OLEVariant;
begin
{ Create the OLE Object }
Try
WordApp := CreateOLEObject('Word.Application');
WordVersion := WordApp.version;
WordApp.Quit; // >-- HERE!!!!
except
on E: Exception do
begin
WordVersion := -1;
end;
End;
end;
Here https://stackoverflow.com/questions/5484721/delphi-convert-doc-to-pdf-using-word-activex(检查接受的答案)似乎做了同样的事情,但如果我尝试它:无法编译。我在这里只复制相关部分:
Const wdDoNotSaveChanges = 0
[...]
wdo.Quit wdDoNotSaveChanges
[...]
End Function
重要的:
而不是使用
// this is from Word Reference
wdApp.Quit SaveChanges:=wdDoNotSaveChanges
可以使用
// from Word Reference
wdApp.NormalTemplate.Saved = True
有人可以修改我上面的 GetWordVersion 过程,以便使用上述两种方法之一吗?谢谢。