 |
AutoHotkey Community Wir helfen uns gegenseitig aus der Patsche
|
| Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
| Autor |
Nachricht |
anna
Anmeldedatum: 19.12.2007 Beiträge: 24
|
Verfasst am: Mi Mai 14, 2008 12:34 pm Titel: |
|
|
| Code: |
s_IP = 172.16.0.55
s_Treiber = %s_IP%\installation\Windows\Treiber\HPLaserjet2300\win2000_XP\pcl6\hpc2300c.inf
c_Anschluss = LPT1:
c_Name = pr006
d_Modell = HP LaserJet 2300L PCL 6
|
Nur leider passiert da trotzdem nichts.
Das Modell hab ich rausgefunden, aber irgendwie macht er nichts.
Ich möchte einen lokale Drucker mit treibern übers Netzwerk vom Server installieren.
Du benutzt den LPT1, wir verwenden eigentlich Standard TCP/IP Port, macht das vielleicht das Problem aus??ß |
|
| Nach oben |
|
 |
Obi-Wahn
Anmeldedatum: 19.04.2006 Beiträge: 538 Wohnort: Wien
|
Verfasst am: Mi Mai 14, 2008 12:44 pm Titel: |
|
|
Nun ja, windows hat uns die erfahrung gelehrt, dass mit den richtigen einstellungen sogar negative schwerkraft als physikalisches grundgesetz gelten kann...
Im zweifelsfall einfach mal probieren.
ich bezweifel's aber, da es ja ein lokaler drucker ist. Über TCP-Port installier ich eigentlich nur drucker die irgendwo im netzwerk hängen.
Wie ist denn der Drucker am Computer angeschlossen?
(hätt ich eigentlich schon früher fragen können)
Und: Warum packst du die treiber nicht einfach mit in das kompilat? _________________ Garten ist eine Kunstnatur
Das Leben ist nicht fair. Es ist nur fairer als der Tod, das ist alles.
Obi-Wahns Codeschnipsel @ securityvision.ch |
|
| Nach oben |
|
 |
anna
Anmeldedatum: 19.12.2007 Beiträge: 24
|
Verfasst am: Mi Mai 14, 2008 12:52 pm Titel: |
|
|
Eine direkte Verbindun zum Drucker habe ich nicht, sondern es läuft über das Netzwerk, nur wähle ich bei der Installation des Druckers:
Lokalen Drucker, der an den Computer angeschlossen ist aus.
Gebe den Namen ein und den Pfad, auf dem der Treiber (hpc2300c.inf) liegt.
Was könnte man dann noch machen, oder an was liegt es??
Ich komm einfach nicht weiter und irgendwie brauche ich eine passable Lösung  |
|
| Nach oben |
|
 |
Obi-Wahn
Anmeldedatum: 19.04.2006 Beiträge: 538 Wohnort: Wien
|
Verfasst am: Mi Mai 14, 2008 1:02 pm Titel: |
|
|
Wenn du keine direkte Verbindung hast (Computer -> Drucker) AUSSER über das Netzwerkkabel, dann ist das ein Netzwerkdrucker.
Es ist nur die Frage ob der Drucker vom Server freigegeben ist.
Mach mal ein Explorer-Fenster auf, und gib folgendes ein:
und drück enter.
Scheint dann der Drucker auf?
Wenn ja, dann sollte folgender Code funktionieren:
| Code: | s_IP = 172.16.0.55
s_Drucker = <der_freigabename_des_druckers>
; Zum hinzufügen einer Netzwerkdruckerverbindung
RunWait, %A_Windir%\system32\rundll32.exe printui.dll,PrintUIEntry /q /in /n \\%s_IP%\%s_Drucker% |
Thats it. Im anschluss sollte ein Popup aufgehen, das besagt, dass wenn du auf OK klickst, die Treiber des Druckers auf dem Lokalen Computer installiert werden.
Klick auf OK, und die sache hat sich.
@ least: So funktionierts bei mir _________________ Garten ist eine Kunstnatur
Das Leben ist nicht fair. Es ist nur fairer als der Tod, das ist alles.
Obi-Wahns Codeschnipsel @ securityvision.ch |
|
| Nach oben |
|
 |
anna
Anmeldedatum: 19.12.2007 Beiträge: 24
|
Verfasst am: Mi Mai 14, 2008 1:11 pm Titel: |
|
|
hört sich jetzt vielleicht blöd an, wie finde ich den Freigabenamen
und \\172.16.0.55 passiert nichts,
//172.16.0.55 zeigt es eine Oberläche an, für den Drucker
Ich weis nicht mehr weiter  |
|
| Nach oben |
|
 |
Obi-Wahn
Anmeldedatum: 19.04.2006 Beiträge: 538 Wohnort: Wien
|
Verfasst am: Mi Mai 14, 2008 1:36 pm Titel: |
|
|
Ok, dann ist das wahrscheinlich die direkte IP des netzwerkfähigen Druckers.....
So sollte das jetzt aber hinhauen.
| Code: | Drucker_IP = 172.16.0.55
Drucker_Bezeichnung = pr006
Drucker_Treiber = \\samba-main\installation\Windows\Treiber\HPLaserjet2300\win2000_XP\pcl6\hp2300c.inf
Drucker_Anschluss = IP_%Drucker_IP%
Drucker_Modell = HP LaserJet 2300L PCL 6
RunWait, "%A_Windir%\system32\rundll32.exe printui.dll,PrintUIEntry /if /b "%Drucker_Bezeichnung%" /f "%Drucker_Treiber%" /r "%Drucker_Anschluss%" /m "%Drucker_Modell%" /z"
|
_________________ Garten ist eine Kunstnatur
Das Leben ist nicht fair. Es ist nur fairer als der Tod, das ist alles.
Obi-Wahns Codeschnipsel @ securityvision.ch |
|
| Nach oben |
|
 |
anna
Anmeldedatum: 19.12.2007 Beiträge: 24
|
Verfasst am: Mi Mai 14, 2008 1:48 pm Titel: |
|
|
Es tut mir unendlich leid, aber es funktioniert schon wieder nicht.
Das System kann die angegebene Datei nicht finden,
bei
RunWait, "%A_Windir%\system32\rundll32.exe printui.dll,PrintUIEntry /if /b "%Drucker_Bezeichnung%" /f "%Drucker_Treiber%" /r "%Drucker_Anschluss%" /m "%Drucker_Modell%" /z"
Mache ich die "" weg, macht er gar nichts mehr.
Ich verzweifle gerade[/code] |
|
| Nach oben |
|
 |
fredchf
Anmeldedatum: 18.09.2006 Beiträge: 605 Wohnort: Deutschland
|
Verfasst am: Mi Mai 14, 2008 1:59 pm Titel: |
|
|
das komma sollte ein escape bekommen und nach dem ersten pfad einmal anführungszeichen.
| Code: | | RunWait, "%A_Windir%\system32\rundll32.exe" printui.dll`,PrintUIEntry /if /b "%Drucker_Bezeichnung%" /f "%Drucker_Treiber%" /r "%Drucker_Anschluss%" /m "%Drucker_Modell%" /z |
EDIT:
ungetestet
anführungszeichen nach dem ersten pfad habe ich zwar gesagt,aber nicht so in den code geschrieben(korrigiert)  _________________ Mit freundlichen Grüßen
fredchf |
|
| Nach oben |
|
 |
anna
Anmeldedatum: 19.12.2007 Beiträge: 24
|
Verfasst am: Mi Mai 14, 2008 2:18 pm Titel: |
|
|
funktioniert trotzdem nicht, komischer weise auf der Kommandozeile funktioniert :
z:\>rundll32 printui.dll,PrintUIEntry /if /b "pr006" /f \\samba-main\installatio
n\Windows\Treiber\HPLaserjet2300/win2000_XP\pcl6\hpc2300c.inf /r "lpt1:" /m "HP
LaserJet 2300 Series PCL 6"
Was muss ich dann in der ahk ändern, damit es trotzdem funktioniert???
Er nimmt die IP-Adresse nicht an bei Drucker-Anschluss, wenn ich das richtig sehe.
Ändere ich aber den Drucker-Anschluss auf lpt1:
ändert sich leider auch nichts bei der ahk. |
|
| Nach oben |
|
 |
fredchf
Anmeldedatum: 18.09.2006 Beiträge: 605 Wohnort: Deutschland
|
Verfasst am: Mi Mai 14, 2008 2:21 pm Titel: |
|
|
maskiere den aufruf doch mal mit einer msgbox,dann kannst du ihn lesen.
| Code: | | MsgBox, RunWait, "%A_Windir%\system32\rundll32.exe" printui.dll`,PrintUIEntry /if /b "%Drucker_Bezeichnung%" /f "%Drucker_Treiber%" /r "%Drucker_Anschluss%" /m "%Drucker_Modell%" /z |
btw:zum thema autoinstaller gibt es hier ein,auf obi-wahns code aufbauendes, script plus inicreater _________________ Mit freundlichen Grüßen
fredchf |
|
| Nach oben |
|
 |
anna
Anmeldedatum: 19.12.2007 Beiträge: 24
|
Verfasst am: Mi Mai 14, 2008 2:52 pm Titel: |
|
|
Danke, hab ich vor kurzem auch entdeckt.
Nur leider funktioniert das mit dem Aufruf immer noch nicht.
An was liegt das?? |
|
| Nach oben |
|
 |
Obi-Wahn
Anmeldedatum: 19.04.2006 Beiträge: 538 Wohnort: Wien
|
Verfasst am: Mi Mai 14, 2008 3:02 pm Titel: |
|
|
Tja, mir fallen nur noch 3 lösungsmöglichkeiten ein:
1.) Escape alle Anführungszeichen ausser die beiden äussersten
2.) Verwende %comspec%. Da kannst du dann auch vmtl. Eine Fehlermeldung sehen.
| Code: | | RunWait %comspec% /k "rundll32.exe printui.dll`,PrintUIEntry /if /b `"%Drucker_Bezeichnung%`" /f `"%Drucker_Treiber%`" /r `"%Drucker_Anschluss%`" /m `"%Drucker_Modell%`" /z" |
Und Wenns dann funkt:
| Code: | | RunWait %comspec% /c "rundll32.exe printui.dll`,PrintUIEntry /if /b `"%Drucker_Bezeichnung%`" /f `"%Drucker_Treiber%`" /r `"%Drucker_Anschluss%`" /m `"%Drucker_Modell%`" /z", , Hide |
3.) Verwende statt der AHK ausführung den Umweg über eine .bat _________________ Garten ist eine Kunstnatur
Das Leben ist nicht fair. Es ist nur fairer als der Tod, das ist alles.
Obi-Wahns Codeschnipsel @ securityvision.ch |
|
| Nach oben |
|
 |
anna
Anmeldedatum: 19.12.2007 Beiträge: 24
|
Verfasst am: Mi Mai 14, 2008 3:10 pm Titel: |
|
|
Funktioniert mit deinem Vorschlag, danke.
Aber nur, wenn ich beim Drucker-Anschluss: lpt1:
angebe.
Mit der IP-Adresse nicht und auch mit Standard TCP/IP Port nicht.
Das Probleme müsst ich noch lösen.
Denn sonst verwendet er den Lokalen Anschluss und wir benutzen Standard TCP/IP Port aber wie das gehen soll?? |
|
| Nach oben |
|
 |
Obi-Wahn
Anmeldedatum: 19.04.2006 Beiträge: 538 Wohnort: Wien
|
Verfasst am: Mi Mai 14, 2008 3:42 pm Titel: |
|
|
Tja, ich muss sagen, ich steh da auch etwas an.
Netzwerkdrucker mit direkter Netzwerkanbindung sind nicht gerade meine stärke, aber grundsätzlich wird der Anschluss als "IP_<ip_adresse_des_druckers>" angegeben.
Wieso das nicht funktioniert, kann ich dir auf die schnelle auch nicht sagen.
Du könntest auch noch vllt con2prt ausprobieren, mit dem programm arbeitet ein befreundeter sysadmin von mir.
Du könntest es in das kompilierte script per FileInstall einbinden.
Als Printerserver gibst du halt die IP des Druckers an.
EDIT:
So, ich hab mich mal an die Arbeit gemacht (gott was bin ich nett), und hab deine Codewurst (DIE NOCH IMMER NICHT IN CODE TAGS SITZT!!!) mal etwas formatiert:
| Code: | SetTitleMatchMode, 3
F12::
s_IP =
Var =
Var2 =
Run, %comspec% /c "rundll32.exe shell32.dll`,SHHelpShortcuts_RunDLL AddPrinter", , Hide
WaitActive("Druckerinstallations-Assistent", "Willkommen")
Send, {Enter}
WaitActive("Druckerinstallations-Assistent", "Lokaler Drucker`, der an den Computer angeschlossen ist")
Send, {Enter}
WaitActive("Druckerinstallations-Assistent", "Einen neuen Anschluss erstellen")
Send, {Shift down}{Tab}{Shift up}{Down}s{Enter}
WaitActive("Assistent zum Hinzufügen eines Standard-TCP/IP-Druckerports", "Mit diesem Assistent")
Send, {Enter}%s_IP%{Enter}
WaitActive("Druckerinstallations-Assistent", "Wählen Sie den Herst")
Send, {TAB 5}{ENTER}
WaitActive("Installation von Datenträger", "&Dateien des Herstel")
Send, %Var%{Tab 2}{Enter}
WaitActive("Druckerinstallations-Assistent", "Wählen Sie den Herst")
Send, {Tab 2}{Enter}
WaitActive("Druckerinstallations-Assistent", "HP LaserJet 2300 Ser")
Send, %Var2%{Enter}
Control, Check, , Button2, Druckerinstallations-Assistent, Geben Sie einen Name
WaitActive("Druckerinstallations-Assistent", "Wenn dieser Drucker")
Control, Check, , Button1, Druckerinstallations-Assistent, Drucker nicht freigeben
Send, {Enter}
WaitActive("Druckerinstallations-Assistent", "Soll eine Testseite")
Control, Check, , Button3, Druckerinstallations-Assistent, Soll eine Testseite gedruckt werden?
Send, {Enter}
WaitActive("Druckerinstallations-Assistent", "Fertigstellen des As")
Send, {Enter}
Return
WaitActive(Title, Text) {
WinWait, %Title%, %Text%
IfWinNotActive, %Title%, %Text%, WinActivate, %Title%, %Text%
WinWaitActive, %Title%, %Text%
} |
Is natürlich nicht getestet, da ich keinen Netzwerkfähigen drucker hab, aber es ist einfach kopiert (bis auf das erste Control und die IniReads).
Greets
O-W _________________ Garten ist eine Kunstnatur
Das Leben ist nicht fair. Es ist nur fairer als der Tod, das ist alles.
Obi-Wahns Codeschnipsel @ securityvision.ch |
|
| Nach oben |
|
 |
anna
Anmeldedatum: 19.12.2007 Beiträge: 24
|
Verfasst am: Do Mai 15, 2008 9:05 am Titel: |
|
|
Funktioniert soweit ganz gut,
aber ich habe jetzt das Problem, das ich wenn der Drucker nicht angeschalten ist, zwei Fenster bekomme, die ich bei eingeschaltetem Drucker nicht bekomme.
Wie baue ich dann ein IfWinActive ein, ohne das er meckert??
Denn schreibe ich IfWinActive in das "Schema" rein, meckert er.
Besten Dank für deine Hilfe!!! |
|
| Nach oben |
|
 |
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten.
|
Powered by phpBB © 2001, 2005 phpBB Group Deutsche Übersetzung von phpBB.de
|