Verwendung von pdfMachine in einer Remote-Desktop-Umgebung

Lesen Sie die spezifischen Hinweise zur Verwendung von pdfMachine in einer Citrix / Remote Desktop / Terminal Server:

Lizenzierung

pdfMachine wird pro Benutzer lizenziert. Der gleiche Windows-Benutzer kann die Lizenz auf bis zu 5 Geräten verwenden, wenn er sich als dieser Benutzer anmeldet. Lesen Sie das Lizenzvereinbarung für spezifische Details.

In einer Terminalserver-Umgebung werden der Server und die Clients als ein einzelnes Gerät erkannt. Dies ermöglicht es einem Benutzer, eine einzelne Lizenz in einer Terminalserver-Farm über viele Clients hinweg zu verwenden.

Hinweis: Versionen vor 14.61 sind pro Maschine lizenziert, d.h. jede beteiligte Maschine (Server und Citrix / RDP-Clients), unabhängig davon, wie dünn der Client ist, benötigt eine separate Lizenz.

Installation auf Citrix / Remote Desktop / Terminal Server

Die folgenden Hinweise sollten vor der Installation in einer Terminal Server Umgebung gelesen werden:

(1) Verwenden Sie die pdfMachine.exe Datei, um zu installieren. Anweisungen sind hier.
(2) Verwenden Sie nicht die Systemsteuerung Programme hinzufügen/entfernen, um zu installieren.  
(3) Benutzen Sie nicht den Befehl:  "change user /install"

Wenn Sie entweder (2) oder (3) oben tun, Terminal Server erzeugt "Shadow Registry" Einträge, die die gültigen pdfMachine-Registry-Einträge überschreiben. Wenn dies geschieht, müssen Sie pdfMachine deinstallieren und dann manuell alle Shadow-Registry-Einträge aus der Registry entfernen. Sie befinden sich normalerweise unter dem Registry-Schlüssel:
HKEY_LOCAL_MACHINE\SOFTWARE\ Microsoft\Windows NT\CurrentVersion\Terminal Server\Install\Software\ pdfMachine
Wenn dies geschehen ist, starten Sie neu und installieren dann pdfMachine durch Ausführen des pdfMachine.exe Programms unter einem Admin-Konto.

bgsmsnd.exe:
Der Prozess bgsmsnd.exe muss zum Zeitpunkt der Benutzeranmeldung ausgeführt werden.  Jeder Benutzer wird eine laufende Ausgabe haben.  Wenn Sie Anwendungen über Terminal server veröffentlichen, dann stellen Sie sicher, dass Sie eine Zeile zum Anmeldeskript hinzufügen, die bgsmsnd.exe ausführt, welches sich im Druckertreiberverzeichnis befindet, typischerweise: C:\Windows\System32\spool\ drivers\w32x86\3\bgsmsnd.exe oder C:\Windows\System32\spool\ drivers\x64\3\bgsmsnd.exe

Benutzeroptionen:
Das erste Mal, wenn sich ein Benutzer nach der Installation von pdfMachine anmeldet, Registrierungseinträge für alle pdfMachine-Optionen werden erstellt in:

HKEY_CURRENT_USER\Software\

pdfMachine 

Diese werden unter Verwendung sinnvoller Voreinstellungen und Werte erstellt, die in der "Bgsconf.ini"-Datei gespeichert sind.  Bgsconf.ini befindet sich im Druckertreiberverzeichnis (z.B. C:\Windows\System32\spool\ drivers\w32x86\3\bgsconf.ini oder C:\Windows\System32\spool\ drivers\x64\3\bgsconf.ini). Wenn Sie die bgsconf.ini manuell bearbeiten, können Sie Optionen voreinstellen, die die Benutzer am Ende haben werden.  Aber sobald sich die Benutzer nach der Installation zum ersten Mal angemeldet haben, werden nachfolgende Änderungen am Inhalt der bgsconf.ini-Datei keine Auswirkung mehr haben.

Hinweis für Windows 7-Benutzer:

Stellen Sie sicher, dass Sie Version 13.098 oder höher verwenden.
In den erweiterten Optionen für den pdfMachine-Drucker stellen Sie die folgende Option ein: "Direkt an den Drucker drucken"

Verwendung von pdfMachine auf der Client-Seite

Bei Verwendung von Citrix / Windows Terminal Server / Remotesitzungen können Sie einen pdfMachine-Druck initiieren und E-Mail senden / speichern / anzeigen von der Client-Seite. Um dies zu tun:

Verwendung veröffentlichter Anwendungen

Wenn Sie die "veröffentlichte Anwendung"-Funktion von Citrix oder dem Terminalserver verwenden, gibt es einige Dinge, die Sie tun müssen, damit pdfMachine funktioniert.

bgsmsnd.exe ist ein pdfMachine-Hintergrundprozess, der unter demselben Konto laufen muss wie die Anwendung, die den Druckvorgang ausführt. Es wird bei der Installation und beim Anmelden gestartet. Es befindet sich normalerweise im Druckertreiberverzeichnis:

C:\windows\system32\spool\drivers\w32x86\3\bgsmsnd.exe
oder
C:\windows\system32\spool\drivers\x64\3\bgsmsnd.exe

Start-up

Sie müssen ein Startskript oder etwas konfigurieren, das bgsmsnd.exe startet, bevor die veröffentlichte Anwendung gestartet wird.

Ausgang

Sie müssen dann Ihre Citrix- oder Terminalserver-Sitzung so konfigurieren, dass bgsmsnd.exe beim Beenden beendet wird, andernfalls bleibt es hängen. Sie können dies tun, indem Sie bgsmsnd.exe erneut mit der Befehlszeilenoption -exit ausführen. z.B. bgsmsnd.exe -exit

Im Falle eines Verbindungsverlusts oder wenn der Benutzer die App beendet, wird bgsmsnd.exe weiterhin ausgeführt. Auf Citrix kann dies durch das Setzen eines Registrierungseintrags gehandhabt werden, wie beschrieben:
http://support.citrix.com/article/ctx891671

Beachten Sie den Registrierungsschlüssel:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\wfshell\TWI

Sie können auch die maximale Zeit einstellen, die eine getrennte Benutzersitzung aktiv bleibt:
http://technet.microsoft.com/en-us/library/cc754272.aspx

Sicherheitseinstellungen

Wenn Sie an einem Terminal-Server angemeldet sind und eine Verbindung zu einem freigegebenen Drucker herstellen, der auf einem anderen Rechner läuft, kann die Fehlermeldung "Sie haben nicht genügend Zugriff auf Ihren Rechner, um eine Verbindung zum ausgewählten Drucker herzustellen" angezeigt werden. Dies liegt daran, dass die Option "Verhindern, dass Benutzer Druckertreiber installieren" standardmäßig in den lokalen Sicherheitseinstellungen aktiviert ist.

Auf dem Server, der Terminaldienste ausführt:

(1) Klicken Sie auf Start, zeigen Sie mit dem Mauszeiger auf Programme, klicken Sie auf Verwaltungstools,und dann doppelklicken Sie auf Lokale Sicherheitsrichtlinie.
(2) Doppelklicken Sie auf Lokale Richtlinien.
(3) Doppelklicken Sie auf Sicherheitsoptionen.
(4) Doppelklicken Sie im rechten Bereich auf Verhindern, dass Benutzer Druckertreiber installieren.
(5) Klicken Sie auf Deaktiviert, und klicken Sie dann auf OK.
(6) Schließen Sie das Fenster "Lokale Sicherheitseinstellungen".

Es kann dann erforderlich sein, den Server neu zu starten oder eine sofortige Richtlinienaktualisierung zu erzwingen, damit die Änderung wirksam wird.