2009-11-10 94 views
2

我们使用Delphi 7开发数据库应用程序作为后端。我们的系统通常安装在Windows服务器上,而PC作为终端。所有的设置和数据库都在服务器上。
我们在Citrix服务器上运行我们的软件时遇到问题。特别是印刷似乎是一个问题。无论是在选择正确的打印机和格式的报告。 我们使用Rbuilder版本10来生成我们的报告,并将它们发送到斑马标签打印机,因此不是标准的Windows打印机驱动程序。报告也是非标准尺寸。 我们所看到的事情正在延伸和移动页面上的报告。
有没有人看到类似的行为或有任何可能造成这种情况的想法。
我们没有测试Citrix系统,因此很难测试。我们无法在正常的Windows环境中复制它。在citrix服务器上打印

+0

@DelphiGirl - 欢迎来到Stack Overflow。在行的末尾使用两个空格作为新行。奇怪但是真的... – Kobi 2009-11-10 12:22:29

+0

我不能直接帮忙,但是当我有一个Citrix的大客户时,Citrix给我发送了一套安装光盘来进行测试。我认为这是一个60天的试用期,但它允许我正确地进行试用。 – mj2008 2009-11-10 13:04:31

+0

我们正在寻找测试citrix软件的选项。谢谢你的提示。 – LizHanson 2009-11-10 14:27:22

回答

1

在Citrix(和Microsoft终端服务器)上,打印机通常在应用程序启动后被“附加”。这会导致在Reportbuilder打印机列表中可能会包含该打印机。

我们已经迫使报表创建刷新列表,当打印机更改使用下面的代码(附Application.OnSettingChange)

procedure TMainForm.ApplicationEventsSettingChange(Sender: TObject;
Flag: Integer; const Section: string; var Result: Integer);
begin
if uppercase(Section) = 'DEVICES' then
begin
ppPrintr.ppPrinters.Refresh;
end;
end;

希望它可以解决你的问题解决了这个问题。

+0

这似乎可以很方便,解决了我们在citrix打印机中遇到的部分问题。将定义添加到我的代码。但它并不能解决我们所看到的格式问题。基本上,标签会变得比我们在报告中设置的尺寸大得多。它不会影响每个日志或每个应用程序。拉伸效应似乎是随机的。打印机驱动程序或本地/网络打印机设置是否可以覆盖报告格式的页面大小设置。 – LizHanson 2009-11-11 14:17:05

0

看看这个link,你可以得到一个评估版本,但你也可以下载安装了完整citrix安装的虚拟机。顺便说一下,该产品现在称为XenApp。

0

以我的经验,思杰打印是一场噩梦。

您需要确保要使用的打印机作为本地打印机安装在Citrix服务器上,然后禁止为应用程序使用客户端打印机。这应该有助于让打印机正确。

基本上,您需要确保可以从服务器控制台正确运行应用程序,然后尝试将其用作Citrix应用程序。

祝你好运。