Können 32-Bit-Druckertreiber unter 64-Bit-Fenstern funktionieren?

8

Ich lese herum und es scheint, dass 32-Bit-Treiber unter 64-Bit-Fenstern nicht funktionieren. Ist das wahr? Da 32-Bit-Anwendungen unter 64-Bit-Fenstern ausgeführt werden können, erscheint es lächerlich, dass 32-Bit-Druckertreiber dies nicht können. Werden Druckertreiber auf Kernelebene ausgeführt?

Klingt so, als wären wir in der Treiberhölle für unsere RDP-Umgebungen.

Matt
quelle
Ist das ein Canon-Drucker? :) Ich habe mich vor kurzem damit befasst
kolypto

Antworten:

13

x64-Versionen von Windows unterstützen keine 32-Bit-Kernelmodustreiber. Die Aussagen von Microsoft zu: Vista sind hier (sehen Sie sich unbedingt die Errata unten an - der Artikel enthält einen schwerwiegenden Fehler, den er korrigiert). Dies gilt auch für Windows 7 und Windows Server 2008.

Es gibt keinen magischen "Schalter", den Sie betätigen können, damit 32-Bit-Kernelmodustreiber auf einem x64-Kernel arbeiten können. Sie werden nicht, Punkt. (Ja, ja - ich nehme an, jemand könnte eine Art hässliches Shimming-System schreiben, um dies zu ermöglichen, aber niemand außerhalb von Microsoft hätte die notwendige Dokumentation, um so etwas zu schreiben ... Außerdem ist es einfacher, nur ein 32- Bit-Betriebssystem unter Virtualisierung in einem 64-Bit-Host, wenn Sie das wirklich brauchen ...)

In Bezug auf Druckertreiber ist Easy Print die Antwort von Microsoft auf den Albtraum clientseitiger Druckertreiber in einer Terminaldienstumgebung. Sie benötigen jedoch Windows Server 2008 auf dem Terminalserver-Computer.

Evan Anderson
quelle
Danke für das Detail. Es waren tatsächlich Druckertreiber, auf die ich mich bezog und die meiner Meinung nach im Benutzerbereich ausgeführt werden. Theoretisch sollte es möglich sein, 32-Bit-Kerneltreiber durch eine Art Thunking-Schicht zu führen, nicht wahr? Ich habe es geschafft, 16-Bit-DLLs unter 32-Bit-Programmen und 32-Bit-DLLs unter 16-Bit-Programmen zu laden. Ja, ich bin auch Programmierer.
Matt
1

Es ist möglich, 32-Bit-Treiber neben den 64-Bit-Treibern auf Ihrem Druckserver zu installieren. Klicken Sie auf den Druckserver, rufen Sie die Seite mit den Druckeroptionen auf und klicken Sie auf "Zusätzliche Treiber", um die 32-Bit-Version zu installieren. Der Name muss genau übereinstimmen.

Die großen Druckerhersteller verfügen über 64-Bit-kompatible Treiber. Überprüfen Sie auch den HP Universal-Druckertreiber und den Xerox Global Print-Treiber. Arbeitete für die meisten Drucker in meinem Netzwerk. Der Xerox-Treiber verspricht, für jeden Drucker und überall zu funktionieren (aber ich verwende ihn nur für Xerox-Computer).

Quinten
quelle
1
Ich denke, Sie haben den Teil über RDP verpasst. Soweit ich mich erinnere, hatten wir einige Clients, die eine Verbindung zu Windows Server 2003 herstellten. Sie verwendeten Windows 7 und die Treiber funktionierten nicht und es gab keine Treiber für ihre älteren Drucker.
Matt
Ein so alter Drucker ist möglicherweise ein Upgrade wert. Wir verwenden jedoch Drucker ab 15 Jahren, für die 64-Bit-Treiber verfügbar sind. Jeder gute Drucker ist wahrscheinlich sowieso Postscript oder PCL - er spricht eine Standarddruckersprache und ein generischer Treiber funktioniert einwandfrei. Ich habe auch mit RDP keine Probleme damit.
Quinten
@Quenten - danke, eigentlich waren diese Kunden eine Reihe von unabhängigen Kindergärten. Wir haben gerade eine Drittanbieteranwendung auf dem Begriff Server gehostet. Es lag also an den Kunden selbst, ob sie ihre Drucker aktualisieren wollten. Wir verwenden jetzt stattdessen TSPrint.
Matt
0

Total machbar. Anweisungen mit Screenshots hier: http://blogs.technet.com/sbs/archive/2009/02/13/how-to-add-32-bit-print-drivers-to-sbs-2008.aspx . Machen Sie sich keine Sorgen, dass es sich bei dem Beitrag um SBS handelt. Er funktioniert auch mit Vanilla x64-Versionen von W2K8.

Sean Earp
quelle
1
Beachten Sie, dass Sie den 32-Bit-Treiber nicht auf dem SBS 2008-Server ausführen. Sie legen es einfach in einem freigegebenen Ordner ab, damit die entsprechenden 32-Bit-Clients den Treiber automatisch installieren können. Die "Hölle" -Situation, auf die sich das OP bezieht, sind x64-basierte Terminalservercomputer mit 32-Bit-Clients, die eine Verbindung herstellen und erwarten, dass sie "Druckerumleitung" verwenden können, um Druckaufträge vom Terminalserver an den lokalen Drucker des Clients zu senden. Es kann schwierig sein, 64-Bit-Treiber für ältere Drucker zu finden, insbesondere wenn der Hersteller keine 64-Bit-Treiber für den Verkauf neuer Drucker verwendet.
Evan Anderson
Dang ... hat den RDP-Teil verpasst. Sie haben Recht, Easy Print ist der richtige Weg. Druckerhersteller verwenden möglicherweise einen Mangel an 64-Bit-Treibern, um neue Drucker zu verkaufen, aber sie verkaufen neue Drucker, um neuen Toner / neue Tinte zu verkaufen;)
Sean Earp
-2

Einige Treiber funktionieren, andere nicht.

In 64-Bit-Versionen von Windows Vista können Sie keine Treiber installieren, die nicht "signiert" sind. Dies bedeutet, dass beim Versuch, 32-Bit-Treiber ohne Vorzeichen zu installieren, Probleme auftreten.

Glücklicherweise können Sie diese Einschränkung deaktivieren, indem Sie Folgendes an der Eingabeaufforderung ausführen ...

bcdedit /set loadoptions DDISABLE_INTEGRITY_CHECKS
nrgyz
quelle