Deutsches AutoHotkey Homepage AutoHotkey Community
Wir helfen uns gegenseitig aus der Patsche
 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Fensternamen ändern sich??
Gehe zu Seite Zurück  1, 2, 3, 4  Weiter
 
Neues Thema eröffnen   Neue Antwort erstellen    AutoHotkey Community Foren-Übersicht -> Ich brauche Hilfe!
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
anna



Anmeldedatum: 19.12.2007
Beiträge: 24

BeitragVerfasst am: Mi Mai 14, 2008 12:34 pm    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden
Obi-Wahn



Anmeldedatum: 19.04.2006
Beiträge: 538
Wohnort: Wien

BeitragVerfasst am: Mi Mai 14, 2008 12:44 pm    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
anna



Anmeldedatum: 19.12.2007
Beiträge: 24

BeitragVerfasst am: Mi Mai 14, 2008 12:52 pm    Titel: Antworten mit Zitat

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 Smile
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Obi-Wahn



Anmeldedatum: 19.04.2006
Beiträge: 538
Wohnort: Wien

BeitragVerfasst am: Mi Mai 14, 2008 1:02 pm    Titel: Antworten mit Zitat

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:
Code:
\\172.16.0.55
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
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
anna



Anmeldedatum: 19.12.2007
Beiträge: 24

BeitragVerfasst am: Mi Mai 14, 2008 1:11 pm    Titel: Antworten mit Zitat

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 Sad
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Obi-Wahn



Anmeldedatum: 19.04.2006
Beiträge: 538
Wohnort: Wien

BeitragVerfasst am: Mi Mai 14, 2008 1:36 pm    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
anna



Anmeldedatum: 19.12.2007
Beiträge: 24

BeitragVerfasst am: Mi Mai 14, 2008 1:48 pm    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden
fredchf



Anmeldedatum: 18.09.2006
Beiträge: 605
Wohnort: Deutschland

BeitragVerfasst am: Mi Mai 14, 2008 1:59 pm    Titel: Antworten mit Zitat

das komma sollte ein escape bekommen und nach dem ersten pfad einmal anführungszeichen. Wink
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 Exclamation
anführungszeichen nach dem ersten pfad habe ich zwar gesagt,aber nicht so in den code geschrieben(korrigiert) Embarassed
_________________
Mit freundlichen Grüßen
fredchf
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
anna



Anmeldedatum: 19.12.2007
Beiträge: 24

BeitragVerfasst am: Mi Mai 14, 2008 2:18 pm    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden
fredchf



Anmeldedatum: 18.09.2006
Beiträge: 605
Wohnort: Deutschland

BeitragVerfasst am: Mi Mai 14, 2008 2:21 pm    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden
anna



Anmeldedatum: 19.12.2007
Beiträge: 24

BeitragVerfasst am: Mi Mai 14, 2008 2:52 pm    Titel: Antworten mit Zitat

Danke, hab ich vor kurzem auch entdeckt.

Nur leider funktioniert das mit dem Aufruf immer noch nicht.
An was liegt das??
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Obi-Wahn



Anmeldedatum: 19.04.2006
Beiträge: 538
Wohnort: Wien

BeitragVerfasst am: Mi Mai 14, 2008 3:02 pm    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
anna



Anmeldedatum: 19.12.2007
Beiträge: 24

BeitragVerfasst am: Mi Mai 14, 2008 3:10 pm    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden
Obi-Wahn



Anmeldedatum: 19.04.2006
Beiträge: 538
Wohnort: Wien

BeitragVerfasst am: Mi Mai 14, 2008 3:42 pm    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
anna



Anmeldedatum: 19.12.2007
Beiträge: 24

BeitragVerfasst am: Do Mai 15, 2008 9:05 am    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    AutoHotkey Community Foren-Übersicht -> Ich brauche Hilfe! Alle Zeiten sind GMT
Gehe zu Seite Zurück  1, 2, 3, 4  Weiter
Seite 2 von 4

 
Gehe zu:  
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