Windows 7

Blog von Microsoft Deutschland

Drucker auf Windows 7 64-bit im Netzwerk freigeben

Drucker auf Windows 7 64-bit im Netzwerk freigeben

  • Comments 31
  • Likes

Drucker im Netzwerk zur gemeinsamen Nutzung zur Verfügung zu stellen ist nicht nur in Firmennetzwerken eine Standardaufgabe. In der Vergangenheit haben viele Anwender auch zu Hause einen Drucker zur gemeinsamen Nutzung konfiguriert. Während das bei Windows XP und Windows Vista ein mühsame und manuelle zu erledigende Aufgabe war, kann Windows 7 mit der neuen Heimnetzwerkfunktion angeschlossene Drucker mit einem Mausklick allen Mitgliedern der Heimnetzwerkgruppe zur Verfügung stellen.

Möglicherweise hat man aber nicht nur Windows 7-Rechner zu Hause im Einsatz, sondern auch andere PCs oder Laptops mit Windows Vista, Windows XP oder sogar noch Windows 2000 am Laufen. Ich möchte jetzt nicht in die Details der Konfiguration eines gemeinsamen Netzwerks zwischen verschiedenen Windows-Versionen einsteigen – hier gibt es genügend Anleitungen, die beschreiben, wie man eine passende IP-Konfiguration zur Vernetzung einrichtet und Benutzerkonten mit gleichem Benutzernamen und gleichen Kennworten auf allen Rechnern anlegt.

Ich möchte vielmehr aufzeigen, welche Fallstricke der Umstieg von 32-bit auf 64-bit haben kann. Den Stein ins Rollen brachte eine Kundenanfrage, die über mein Blog hereinkam:

-----Original Message-----
From: ***@***.de [mailto:***@***.de]
Sent: Montag, 30. November 2009 14:12
To: Daniel Melanchthon
Subject: (.: Daniel Melanchthon :. ) : Win7/XP
Importance: High

Auf einem Rechner Win 7 pro 64 bit installiert. Dort ist auch der Drucker Canon pixma ip 4300 angeschlossen und im Netzwerk freigegeben.
Zweiter Rechner mit BS Win XP pro.
Ich kann den Drucker in der Abfrage sehen aber nicht intregieren. Treiber sind auf dem neuesten Stand. Das System will die Datei inf haben. Ist aber weder von der CD Canon noch anderswo zu beziehen.
Keiner kann mir von den Herstellerfirmen helfen.

Welches Problem tritt hier auf? Wen man einen Drucker auf einem Windows-Druckserver (was durchaus auch ein Windows-Client sein kann) einrichtet, werden automatisch die notwendigen Treiber für die Plattform installiert. Das ist bei Windows 7 x64 ein 64-bittiger Treiber. Wenn man nun von einem anderen Rechner aus den freigegebenen Drucker nutzen möchte, kann es passieren, dass der Treiber, den der Druckserver automatisch zur Verfügung stellt, nicht passt. In diesem Beispiel nutzt der Kunde Windows XP auf dem anderen Rechner und ich gehe stark davon aus, dass er die 32-bit-Version installiert hat.

Was muss man nun tun? Man muss auf dem 64-bit-Rechner einen 32-bit Druckertreiber hinzufügen. Das gleiche Problem hat man übrigens auch andersherum, wenn man auf einen Drucker, der an einem Rechner mit 32-bit Windows eingerichtet ist, von einem 64-bit Windows aus über das Netzwerk zugreifen will. Hier muss man auf dem 32-bit-Rechner einen 64-bit Treiber nachinstallieren.

clip_image001

Das habe ich dem Kunden geantwortet. Die nächste Frage des Kunden kam daraufhin prompt und war nicht wirklich eine große Überraschung:

Soweit wie unten beschrieben konnte ich voran kommen. Nur den Treiber. Dort wird dann mein CD Lw angezeigt. Nur auf der Canon-CD ist dann der passende Treiber nicht zu finden. Ich hatte zwar eine Exe-Datei von Canon heruntergeladen mit dem ein 32bit Treiber zusätzlich installiert werden kann. Nur ist das Verzeichnis nicht aufgeführt.
Den habe ich über die Microsoftseite, die zwar zur Canonseite verzweigt, heruntergeladen.
 

Was ist jetzt das Problem? Zur Treiberinstallation muss der Treiber in ausgepackter Form vorliegen. Dazu muss der Treiber sich über die INF-Datei installieren lassen. Wenn die Setupautoren des Treibers nur die Installation über ein Setupprogramm vorgesehen haben, läuft man hier in eine Sackgasse. Es gibt zwar auch Workarounds, mit denen man da wieder herauskommen kann (man legt den Drucker auf dem Zielrechner mit einem lokalen Anschluss an, der als Ziel den UNC Pfad des freigegeben Drucker hat), aber ich möchte an dieser Stelle den vorgesehenen, eleganten Weg zeigen.

Als erstes sucht man das Druckermodell im Windows Update Katalog. Der Anfrage kann man gleich Stichworte für das gesuchte Modell mitgeben. So kann man zum Beispiel nach einem Canon PIXMA iP4300 mit folgender URL suchen:

http://catalog.update.microsoft.com/v7/site/Search.aspx?q=ip4300

Das Ergebnis ist dann eine Liste aller Treiber, die zu dem gesuchten Modell passen und in der Datenbank vorhanden sind:

image

In dieser Liste kann man jeden Eintrag anklicken. Es öffnet sich ein Fenster mit Informationen zu unterstützten Plattform (AMD64=64-bit, X86=32-bit), Sprachversionen, Windows-Versionen, etc. Mit dem Button “Add to Basket” kann man den Treiber der Auswahl hinzufügen:

image

Wir brauchen für dieses Beispiel die Treiber für beide Plattformen, also wählt man die aktuellsten Treiber (in diesem Beispiel die ersten zwei) aus und fügt sie dem Auswahlkorb hinzu. Über “View Basket” lässt man sich dann die Auswahl anzeigen…

image

… und startet das Herunterladen:

image image

In dem vorher ausgewählten Zielordner befindet sich dann ein Unterordner mit dem Namen des ausgewählten Modells. Darin liegen die Treiberdateien als CAB-Dateien verpackt:

image

Diese kann man in Windows 7 wie Unterordner darstellen, indem man einen Doppelklick auf eine CAB-Datei ausführt:

image

Aus der CAB-Datei extrahiert man nun mit Copy & Paste die enthaltenen Dateien und legt sie in einen Ordner pro CAB-Datei ab. In meinem Beispiel habe ich zwei Ordner mit den Namen AMD64 und X86 verwendet und in diese Ordner die Dateien aus den jeweiligen CAB-Dateien hineinkopiert.

Als nächstes installiert man den Drucker auf dem Windows 7-PC, an dem der Drucker angeschlossen ist:

image image

Bei der Treiberauswählt wählt man jetzt kein Modell aus der Liste (oder über Windows Update), sondern klickt auf den Button mit der Beschriftung “Datenträger…”:

image

Jetzt navigiert man zu dem Zielordner, in dem sich die ausgepackten Treiberdateien befinden und wählt die INF-Datei an. In diesem Beispiel wird ein Canon PIXMA iP4300 Drucker auf einem 64-bit Windows 7 installiert. Also ist der AMD64-Ordner der richtige:

image image image image image image

Nun ist der Drucker lokal angeschlossen unter Windows 7 einsatzbereit. Die korrekte Funktion kann man mit dem Drucken einer Testseite überprüfen. Im nächsten Schritt fügen wir jetzt den notwendigen 32-bit-Treiber hinzu. Dazu öffnet man über “Geräte und Drucker” die Eigenschaftenseite des installierten Canon-Druckers und wählt die Druckereigenschaften aus:

image

Auf dem Freigabereiter gibt es rechts unten die Option, über die man zusätzliche Treiber einfügen kann:

image

Hier besteht jetzt die Möglichkeit, Treiber für andere, unterstützte Plattformen hinzufügen, in dem man für unser Beispiel den Haken unter x86 setzt. Man beachte die Spalte “Installiert” – der x86-Treiber ist noch nicht eingerichtet:

image

Es folgt wieder die Auswahl des Zielordners. Jetzt navigiert man in den X86-Ordner und wählt die dortige INF-Datei aus:

image

Nachdem man die Auswahl mit “Öffnen” tätigt und die anderen Dialoge mit OK bestätigt, wird der notwendige Treiber installiert und steht ab sofort im Netzwerk zur Verfügung. Wenn man nochmal nachschaut, wird das auch in der Spalte “Installiert” reflektiert:

image

Damit kann man nun auf den Drucker von 32- und 64-bit Windows-Versionen drucken. Das ganze Verfahren könnte man nun auch mit Windows XP-Druckertreibern (falls die Windows Vista-Druckertreiber auf XP nicht funktionieren) durchführen oder auch mit Treibern, die der Hersteller direkt zur Verfügung stellt. Hier muss nur jeweils sichergestellt sein, dass die 32-bit und 64-bit Treiber exakt zueinander passen und als INF-Datei zur INF-Installation zur Verfügung stehen.

Das ist leider nicht bei allen Treiberdateien der Fall. Deswegen habe ich in diesem Beispiel auf den Windows Update Katalog zurückgegriffen. Treiber, die wir über Windows Update zur Verfügung stellen, sind von uns geprüft worden und müssen zum Beispiel die INF-Installation unterstützen.

Comments
  • Diese Erläuterung bestätigte mich in meinem Vorhaben einen HP Laserjet 2200 der auf einem 32 Bit Windows Server 2003 angeschlossen und im Netz freigegeben ist auch den heute angeschlossenen 64 Bit Windows 7 PCs nutzbar zu machen. Leider scheitert das stets an den (nicht) verfügbaren Treibern.

    Bisher war es mir nicht möglich unter Srv 2003 64 Bit Treiber bei der Freigabe zu ergänzen.

    Auch andere Versuche, den unter 32 Bit freigegebenen Drucker den 64 Bit Win7 Clients bekannt zu machen scheitert regelmäßig an mangelnder Kommunikationsfähigkeit zu dem Gerät.

    Frustrierend...

  • kann mich erinnern an meine ersten sbs08 installationen wo alle clients xp/vista waren - alle natürlich 32bit.

    nach mehrere stunden recherche, workarounds hat das mit verschiedenen drucker nicht 100% funktioiert obwohl die hp/xerox netzwerk drucker waren.

    als printserver fungiert jetzt eine 32bit w2k8 server.

    funktioniert einwandfrei.

    vielleicht in ein paar jahren sind wir soweit mit x64 bit treibern dass alles so harmonisch funktioniert.

    vor 2 jahren hat man meines wissen von aldi/hofer/mediamarkt kein pc/notebook bekommen mit x64 OS darauf.

    zeiten ändern sich ja - das ist das schöne dran

    lg

  • @egross: Das problem ist bei dem Treiber etwas diffiziler, da a) der HP- und der MS-Treiber gleich heissen und  b) das treiberpaket auf den Unitreiber aufbaut und Du zur Nachinstallation der x86-Treiber Zugriff auf die Standardtreiber brauchst.

    So sollte es gehen:

    Du installierst auf dem SBS den HP LaserJet 2200 Series PCL 5 (HP). Der Treiber müßte von Windows mitgeliefert worden sein. Wenn Du einen Windows 7-Client hast, der mit 32-bit installiert ist, machst Du das gleiche lokal. Danach gibst Du auf dem Windows 7-Rechner den C:\Windows-Ordner einmal temporär frei. Jetzt am Server wie oben beschrieben den x86-Treiber hinzufügen und bei der Rückfrage nach dem Treiberpaket den Pfad \\<x86-Rechner>\System32\DriverStore\FileRepository\ntprint.inf_x86_neutral_<GUID> angeben. Das sollte so klappen.

    Falls nicht, lädst Du Dir unter http://catalog.update.microsoft.com/v7/site/Search.aspx?q=HP%20LaserJet%202200%20Series%20PCL%205 die unteren beiden Treiber herunter (HP - Printers - HP LaserJet 2200 Series PCL 5). Dann installierst Du, wie oben beschrieben, den AMD64-Treiber auf dem SBS, indem Du den Treiber vom Datenträger lädst. Dann, wie oben beschrieben, den X86-Treiber hinzufügen und bei der ersten Frage nach dem Treiber den Pfad zum heruntergeladenen X86-Treiber (im ausgepacktem Zustand) angeben. Danach kommt eine zweite Rückfrage nach der ntprint.inf. Hier jetzt den gleichen Pfad auf die Freigabe \\<x86-Rechner>\System32\DriverStore\FileRepository\ntprint.inf_x86_neutral_<GUID> angeben.

    Danach waren bei mir sowohl der x86-, als auch der x64-Treiber installiert. Berichte mal, ob das bei Dir auch klappt.

    VG, Daniel

  • Super Anleitung *daumenhoch*

    Leider finde ich da keinen Treiber zum Epson Multifunktionsdrucker DX5000 :-(

    Was könnte man sonst noch machen?

    Habe den Drucker bei einem Win7 64 Rechner und der Vista 32 Laptop sollte darauf Zugriff haben. Aber im Mom gehts genau wegen dieser 64/32 Bit Treiberproblematik nicht :-/

    HELP! ;-)

  • Hast Du schon mal bei Epson vorbeigeschaut? Dort bekommst Du folgende Treiber:

    Damit schonmal probiert?

  • Sehr gute Anleitung mit der Hintergrundinformationen.

    Es wird tatsächlich eine Weile uns die Mischumgebung begleiten und damit auch mit der Problemen auseinandersetzen.

    Schöne Grüße

  • @dmelanchthon: Zunächst Danke fürs Bezugnehmen auf mein Problem.

    Und vorweg - Nein, bisher habe ich es nicht zu Laufen gebracht. Das "Warum" ist mir dabei nicht 100% klar.

    Was auffällt ist der Unterschied in den Ausgangssituationen: Während Du in Deiner Fallbeschreibung ein 64bit Host-Win7-System hast an dem der Drucker angeschlossen ist und der Drucker den 32bit Clients verfügbar gemacht werden soll, ist es bei mir umgekehrt, 32bit 2003 Srv als Host und Win7 64bit als Client.

    Theoretisch sollte das keinen Unterschied machen, ob man jetzt den 32 (bei Dir) oder 64 bit (bei mir) Treiber im Host System ergänzt.

    Praktisch scheitert es bei mir jedoch an den 64bit Treibern für den Drucker auf dem Server 2003. Diese liegen von HP ausschließlich in einem abweichenden (Uni)Treiberpaket vor. Dem sind zwar auch Treiberdateien zu entlocken, diese werden aber nicht vom 2003 Srv akzeptiert.

    Vom MS Update Server habe ich mehrere Treiber versucht, bei dem selbst der vielversprechendste nicht angenommen wurde... ebentuell weil er als "Update" ausgelegt ist:

    "Microsoft driver update for HP LaserJet 2200 Series PCL 5"

    -----

    [Version]

    Signature="$Windows NT$"

    Provider="Microsoft"

    ClassGUID={4D36E979-E325-11CE-BFC1-08002BE10318}

    Class=Printer

    CatalogFile=prnhp001.cat

    DriverVer=06/21/2006,6.1.7233.0

    [Manufacturer]

    "HP"=HP,NTamd64

    -----

    Alle anderen mir zugänglichen Treiber waren noch weniger geeignet bzw. genaus nicht erfolgreich.

    Ergebnis: Ich bekomme die 64bit Treiber folglich nicht auf dem von Dir eingangs gezeigten Wege in den 2003.

    Nun muss ich zugeben, habe ich an dieser Stelle auch noch eine Frage... welche Treiber, werden denn in der anschließenden Druckerinstallation auf dem Client via dem Host genau installiert? Die 2003 Treiber oder die Win7 Treiber?

    Ich dachte bisher die 2003 Treiber.... allerdings hatte ich bis vor kurzem einen WinXP 64 Client an dem 2003 Server, der ohne zu murren den Druckertreiber vom 2003 aktzeptiert hat... wohlgemerkt in 32bit... oder hat er eigene 64 bit Treiber nachgezogen???

    Fragen über Fragen.

    ach ja... und immer noch Frustrierend ;-)

  • @dmelanchthon

    Ergänzung: Dein Vorschlag, den (64bit) Druckertreiber zunächst lokal (auf win7 Client) zu installieren und anschließend den Treiber (auf dem 2003Srv) über Freigabe des \\<AM64-Rechner>\System32\DriverStore\FileRepository\ntprint.inf_amd64_neutral_02f0bd8e459ed8b3

    nachzuziehen, ist elegant, wird aber leider genauso abgelehnt

    ("der angegebene Pfad enthält keinen Treiber HP LJ 2200 PCL für die angeforderte Prozessorarchitektur"),

    als ob auf einen ausgepackten Treiber von HP (oder MS) verwiesen wird.

  • Hast Du des denn mal mit dem von mir oben genannten "HP - Printers - HP LaserJet 2200 Series PCL 5" probiert? Das ist kein Treiberupdate. Du mußt aber auch genau diesen Treiber in der x86er Variante auf dem Windows Server installieren. Du bekommst ihn über Windows Update. Einfach nach genau dem Begriff oben suchen: http://catalog.update.microsoft.com/v7/site/Search.aspx?q=HP%20-%20Printers%20-%20HP%20LaserJet%202200%20Series%20PCL%205.

    Wenn es damit nicht klappt, installiere ich mir mal eine W2k3 x64 VM und stelle das nach. Habe wegen Weihnachten nur momentan weniger Zeit dafür - in Summe muss man aber auch sagen, dass der Treiber von HP wirklich suboptimal geschrieben wurde.

  • Ich habe das gleiche Problem mit einem Canon IP4200.

    Nach der obengenannten hervorragenden Anleitung habe ich beide Treiber aus dem Windows-Update Catalog runter geladen.

    Die Installation des AMD64-Treiber klappt.

    Bei der Installation des X86-Treibers kommen wahlweise 2 Fehlermeldungen:

    1. Der Vorgang konnte nicht abgeschlossen werden (Fehler: 0x00000002

    2. Ein Treiber Canon IP4200,X86,Typ 3 - Benutzermodus konnte nicht installiert werden.

    Der Vorgang konnte nicht abgeschlossen werden

    Fehler 0xe0000102

    Frust !!!!!!!!!!!!!!!!!!!!!!!

  • Auch ich möchte einen Canon iP4600 an einem WinXP-Rechner von einem Win7-Rechner aus nutzen.

    Die obige Anleitung war dabei zwar hilfreich (ich habe im Update-Katalog einen neueren Treiber gefunden als den auf der Canon-Seite) konnte ihn auf der XP-Maschine auch installieren.

    Auf der Win7-Maschine kann ich mich mit dem Drucker allerdings nicht verbinden.

    Fehlermeldung:  Fehler bei Vorgang: 0x0000000d.

    Ich habe bereits im Forum Microsoft Answers versucht das Problem zu klären, noch aber gibt es keine Lösung.

    Kann hier jemand helfen?

  • zunächst vielen Dank für die super Anleitung  - sehr einleuchtend geschrieben...

    leider funktioniert es bei mit trotzdem nicht

    ip4600 an Win 7 64 bit angeschlossen

    beim Versuch den x86 Treiber zu installieren, sagt Windows, dass der angebene Pfad keinen Treiber für die angeforderte Prozessorarchitektur enthält...

    ich verzweifle hier...

    lg

  • Ich habe die Installation des PCL-5-Treibers auf einem Netzwerkdrucker an IP_192.168.0.40 vorgenommen. Server ist Windows 2003r2 (hilso den X86-Treiber) und es scheint auch zu klappen. Ganz zum Schluss kommt allerdings die Fehlermeldung, dass die Installation nicht vorgenommen werden konnte. Keine Fehlerangabe.

    Wir haben Clients mit Windows 2000-SP4, XP-SP3 und Windows 7-32 Bit, mit denen alles wunderbar klappte. Jetzt wollte ich Windows7-64-Bit-Clients einbinden und die Druckerinstallation geht schief. Nachdem ich diese Seite hier gefunden habe, schöpfte ich wieder Hoffnung, aber jetzt?

    Was kann ich tun?

  • HP LaserJet 1200 und HP Color Laserjet 2605dn

  • In der Liste für zusätziche Treiber gibt es bei W2003r2 auch keinen Punkt zu Windows Vista oder gar Windows 7. Da hatte ich x64 gewählt (erfolglos).

Your comment has been posted.   Close
Thank you, your comment requires moderation so it may take a while to appear.   Close
Leave a Comment