在程序中打开Word文档,并调用方法PrintOut进行打印,为什么在98下打印不出来?(50分)

  • 主题发起人 主题发起人 tianyusharp
  • 开始时间 开始时间
T

tianyusharp

Unregistered / Unconfirmed
GUEST, unregistred user!
代码如下,这是我写的一个函数:
function TMain_DM.PrintDoc(factData: TfactData): ShortInt;
var
WordHandle,WordDoc: OleVariant;
HaveOpen: Byte;
begin
HaveOpen := 0;
try
try
WordHandle := GetActiveOleObject('Word.Application');
HaveOpen := 1;
except
on EOleSysErrordo
HaveOpen := 0;
end;
if HaveOpen = 0 then
begin
try
WordHandle := CreateOleObject('Word.Application');
except
result := -1;
//没有安装打印机
Exit;
end;
end;
WordDoc:=WordHandle.Documents.Open(ExtractFilePath(Application.ExeName)+'taxdoc.doc',False,False);
WordDoc.PrintOut;
result := 1;
finally
if HaveOpen = 0 then
begin
WordHandle.Quit(False);
end
else
begin
WordDoc.Close(False);
end;
WordHandle := UnAssigned;
end;
end;
 
后退
顶部