Jump to content

Dolli75

Members
  • Gesamte Inhalte

    4
  • Registriert seit

  • Letzter Besuch

Beiträge erstellt von Dolli75

  1. Hallo Guenther,

     

    danke dass Du dich meldest. Meinst Du an dieser Stelle die GPMC oder GPEDIT?

     

    Ok. Ich habe jetzt ein bisschen rumgetestet und Messageboxen eingebaut um zu sehen was er überhaupt macht. Es scheint wohl ein Timing Problem zu sein. Ich denke er ist beim Autostart nach dem Logon wohl noch nicht soweit um die Drucker zu finden. Muss ich mir noch was einfallen lassen oder habt Ihr noch eine fixe Idee?

     

    Grüße Chris

     

    Hi zusammen,

     

    ich habs nun gefunden. Das Problem ist tatsächlich ein Timing Problem. Ich habe einfach einen "WScript.Sleep 10000" eingebaut und siehe da es funktioniert. Danke allen für die Hilfe. Hier nochmals das funktionierende Script falls es einer für Windows 7 oder Windows 2008 /2008 R2 braucht.

     

    Grüße Chris

    **************************************************

     

    '

    ' ========= Installiert Drucker, wenn nicht vorhanden ============

    '

    'Array der Drucker, die installiert sein müssen

    '

    benutzer = CStr(WScript.CreateObject("WScript.Network").UserName)

     

    if benutzer <> "bsasupport" then

     

    Set objNetwork = CreateObject("WScript.Network")

    Set WshShell = WScript.CreateObject("WScript.Shell")

    Dim arrayPossPrinters(1)

    arrayPossPrinters(0) = "\\server\printer1"

    arrayPossPrinters(1) = "\\server\printer2"

     

    ' Warte 10 Sekunden bis Windows soweit ist.

    ' Wichtig für alle Windows 7/ 2008 und 2008 R2 Systeme.

    WScript.Sleep 10000

     

    Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")

    Set colPrinters = objWMIService.ExecQuery("Select * From Win32_Printer Where Local = False")

     

     

    ' ==== Überprüfen der installierten Drucker =====

     

     

    If colPrinters.Count <> 0 Then

     

    For Each objPossPrinter In arrayPossPrinters

    bFoundMatch = -1

     

    'überprüfen, ob sich der abgefragte Drucker im Array befindet

     

    For Each objPrinterInstalled In colPrinters

     

    If UCase(objPrinterInstalled.ServerName & "\" & objPrinterInstalled.ShareName) = UCase(objPossPrinter)Then

    bFoundMatch = 1

    'WScript.Echo "Drucker: " & objPossPrinter & vbCrLf & "installiert: " & bFoundMatch

    'Schleife verlassen

    Exit For

    End If

    Next

     

    If bFoundMatch = -1 Then

    'Drucker installieren, da nicht vorhanden

    'wscript.echo bFoundMatch

    'WScript.Echo objPossPrinter

    objNetwork.AddWindowsPrinterConnection objPossPrinter

    End If

    Next

    Else ' muss sein, wenn überhaupt kein Drucker installiert ist

    objNetwork.AddWindowsPrinterConnection "\\server\printer1"

    objNetwork.AddWindowsPrinterConnection "\\server\printer2"

    End If

     

    END If

  2. Hi.

     

    Zum Drucker unter W7 / W2008 hast du dir dies aber schon angesehen? - faq-o-matic.net Drucken unter Windows 7 in der Domne

     

    LG Günther

     

    Hallo Guenther,

     

    danke dass Du dich meldest. Meinst Du an dieser Stelle die GPMC oder GPEDIT?

     

    Ok. Ich habe jetzt ein bisschen rumgetestet und Messageboxen eingebaut um zu sehen was er überhaupt macht. Es scheint wohl ein Timing Problem zu sein. Ich denke er ist beim Autostart nach dem Logon wohl noch nicht soweit um die Drucker zu finden. Muss ich mir noch was einfallen lassen oder habt Ihr noch eine fixe Idee?

     

    Grüße Chris

  3. Moin,

     

    welche Zeile ist denn in deinem Skript die Zeile 48? Im Originaltext ist das "End If", das kann den Fehler aber nicht verursachen.

     

    Gruß, Nils

     

    Servus Nils,

     

    danke erstmal für die schnelle Rückmeldung.

    Vielleicht sollte man das Script auch mit pasten?! ;-)

     

    Ich habe das von Guenther nur um den User erweitert. Hier kommt es:

     

    Die Zeile 48 ist also diese hier objNetwork.AddWindowsPrinterConnection "\\server\printer1"

     

    Danke für die Hilfe

    Grüße Chris

     

    *****************************************************

     

    '

    ' ========= Installiert Drucker, wenn nicht vorhanden ============

    '

    'Array der Drucker, die installiert sein müssen

    '

    benutzer = CStr(WScript.CreateObject("WScript.Network").UserName)

     

    if benutzer <> "bsasupport" then

     

    Set objNetwork = CreateObject("WScript.Network")

    Set WshShell = WScript.CreateObject("WScript.Shell")

    Dim arrayPossPrinters(1)

    arrayPossPrinters(0) = "\\server\printer1"

    arrayPossPrinters(1) = "\\server\printer2"

     

    Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")

    Set colPrinters = objWMIService.ExecQuery("Select * From Win32_Printer Where Local = False")

     

     

    ' ==== Überprüfen der installierten Drucker =====

     

     

    If colPrinters.Count <> 0 Then

     

    For Each objPossPrinter In arrayPossPrinters

    bFoundMatch = -1

     

    'überprüfen, ob sich der abgefragte Drucker im Array befindet

     

    For Each objPrinterInstalled In colPrinters

     

    If UCase(objPrinterInstalled.ServerName & "\" & objPrinterInstalled.ShareName) = UCase(objPossPrinter)Then

    bFoundMatch = 1

    'WScript.Echo "Drucker: " & objPossPrinter & vbCrLf & "installiert: " & bFoundMatch

    'Schleife verlassen

    Exit For

    End If

    Next

     

    If bFoundMatch = -1 Then

    'Drucker installieren, da nicht vorhanden

    'wscript.echo bFoundMatch

    'WScript.Echo objPossPrinter

    objNetwork.AddWindowsPrinterConnection objPossPrinter

    End If

    Next

    Else ' muss sein, wenn überhaupt kein Drucker installiert ist

    objNetwork.AddWindowsPrinterConnection "\\server\printer1"

    objNetwork.AddWindowsPrinterConnection "\\server\printer2"

    End If

     

    END If

  4. Hallo zusammen,

     

    ich muss diesen alten Thread wieder auskramen. :(

    Sorry hierfür.

     

    Ich habe das Script von GuentherH benutzt und es funktioniert auch soweit bei allen NICHT Windows 7 bzw. Windows 2008 Systemen.

     

    Bei Windows 7 bzw. Windows 2008 Systemen bekomme ich aber die folgende Fehlermeldung wenn das Script, ich habe es in den Autostart Ordner für Testzwecke eingebaut, zum zweiten mal gestartet wird:

     

    Script: C:\Tools\NetLogOn\Test.vbs

    Line: 48

    Char: 2

    Error: The environment is incorrect

    Code: 8007000A

    Source: (null)

     

    Warum die Meldung kommt kann ich aber nicht sagen.

     

    Kann mir hierzu jemand helfen?

     

    Beste Grüße aus Darmstadt

    Dolli

×
×
  • Neu erstellen...