На Citrix (и Microsoft Terminal Server) принтеры часто «подключаются» после запуска приложения. Это приводит к тому, что принтер, который может быть встроенным, присутствует в списке принтеров Reportbuilder.
Мы решили проблему, заставив ReportBuilder обновить список, когда принтеры меняются с использованием следующего кода (Прикреплено к Application.OnSettingChange)
procedure TMainForm.ApplicationEventsSettingChange(Sender: TObject;<br>
Flag: Integer; const Section: string; var Result: Integer);<br>
begin<br>
if uppercase(Section) = 'DEVICES' then<br>
begin<br>
ppPrintr.ppPrinters.Refresh;<br>
end;<br>
end;
Надеюсь, это решит вашу проблему.