【发布时间】:2010-05-24 15:56:55
【问题描述】:
我正在使用 Delphi 2009 和 MS Access Interop COM API。我试图弄清楚两件事,但现在一件事比另一件事更重要。
在将打印作业发送到后台处理程序时,我需要知道如何设置文件名。现在它默认为 Access DB 的名称,它可以与文件名不同。我只需要确保在打印时它使用与实际文件本身相同的文件名进入打印假脱机 - 而不是数据库的名称。我的打印机假脱机实际上是一个将文档转换为图像的虚拟打印驱动程序。
这是我的主要问题。第二个问题是如何指定要使用的打印机。目前这不太重要,因为我现在只是使用默认打印机。不过,如果我能指定要使用的打印机就好了。
有人知道这两个问题吗?
这是我的代码:
unit Converter.Handlers.Office.Access;
interface
uses
sysutils, variants,
Converter.Printer,
Office_TLB, Access_TLB, UDC_TLB;
procedure ToTiff(p_Printer: PrinterDriver; p_InputFile, p_OutputFile: String);
implementation
procedure ToTiff(p_Printer: PrinterDriver; p_InputFile, p_OutputFile: String);
var
AccessApp : AccessApplication;
begin
AccessApp := CoAccessApplication.Create;
AccessApp.Visible := False;
try
AccessApp.OpenCurrentDatabase(p_InputFile, True, '');
AccessApp.RunCommand(acCmdQuickPrint);
AccessApp.CloseCurrentDatabase;
finally
AccessApp.Quit(acQuitSaveNone);
end;
end;
end.
【问题讨论】:
标签: delphi ms-access interop printing