Drucker hinzufügen

H@nsli

Grünschnabel
Hi,

ich bin nicht so der Spezialist in VBS.
Ich muss für meine Firma - welche im Acitve Directory arbeitet - in einem VBS den "Add Drucker" Befehl hinzufügen.
Jeder Benutzer, welcher sich mit diesem VBS anmeldet, sollte den Drucker - den ich angeben muss - bekommen und zwar lokal.
Der Drucker ist auf einem Druckserver installiert, also nehme ich an, der Befehl muss so lauten, damit er ihn von dem Server holt.

Ein kleiner Ausschnitt unseres VBS (z.Z. mappen wir Netzlaufwerke):
gruppe = "G-MBA-LA"
set gruppe = GetObject("WinNT://" & "KT" & "/" & Gruppe & ",group")
istMitglied = gruppe.IsMember(user.ADsPath)
if istMitglied then
WshNetwork.MapNetworkDrive "N:", "\\SBIMBAEDV10015\MBALA$"
end if

Ich hoffe jemand kann mir helfen

mfg
 
Hallo,
warte mal....ich habe den Code in einem Projekt drin....ich suche den gerade mal.....

guck dir das mal an:
Visual Basic:
'Ermitteln aller verfügbaren Drucker
'und füllen der ComboBox
Public Sub GetPrinters(Combo As Control)
  Dim x As Integer

  For x = 0 To Printers.Count - 1
    Combo1.AddItem Printers(x).DeviceName
  Next x

  'Standarddrucker voreinstellen
  For x = 0 To Combo1.ListCount - 1
    If Combo1.List(x) = Printer.DeviceName Then
      Combo1.ListIndex = x
      Exit For
    End If
  Next x
End Sub

'Festlegen des Druckers für den Ausdruck
'Erwartet wird als Parameter die im System verwendete
'Bezeichnung des Druckers
'
'Rückgabewert: True  = OK
'              False = Drucker nicht gefunden
Private Function SetPrinter(ByVal prnName As String) _
  As Boolean

  Dim Result As Boolean
  Dim x As Integer

  Result = False
  If Printers.Count > 0 Then
    For x = 0 To Printers.Count - 1
      If Printers(x).DeviceName = prnName Then
        Set Printer = Printers(x)
        Result = True
        Exit For
      End If
    Next x
  End If
  SetPrinter = Result
End Function



Private Sub Form_Load()
Me.Width = "0"
Me.Height = "0"
Timer2.Enabled = True
End Sub


 Private Sub Timer1_Timer()
 GetPrinters Combo1
 'zunächst aktuell verwendeten Drucker "merken"
Dim stdPrinter As String
stdPrinter = Printer.DeviceName
Combo1.ListIndex = Combo1.ListCount - 1
Text1.Text = Combo1.Text
If Text1.Text = Combo1.Text Then
Combo1.RemoveItem ListCount
End If
If Text1.Text = "abc" Then
Shell "rundll32 printui.dll,PrintUIEntry /y /n abc"
MsgBox "Der Drucker wurde erfolgreich eingerichtet.", vbInformation, "Drucker erfolgreich eingerichtet"
Unload Form1
Form1.Show
Form1.Timer4.Enabled = False
Form1.Timer6.Enabled = True
Timer1.Enabled = False
End If
End Sub

Private Sub Timer2_Timer()
MsgBox "Der Drucker, der später die PDF-Dokumente erstellen wird, wird jetzt eingerichtet.", vbInformation, "Drucker wird erstellt..."
Shell "rundll32 printui.dll,PrintUIEntry /if /f ntprint.inf  /r" & _
  Chr$(34) & "File:" & Chr$(34) & " /m " & _
  Chr$(34) & "Apple Color LW 12/660 PS" & Chr$(34) & " /b " & _
  Chr$(34) & "abc" & _
  Chr$(34) & " /z"
Open App.Path & "\printer.ghk" For Output As #1
Print #1, "1"
Close #1
Timer2.Enabled = False
End Sub
 
Zuletzt bearbeitet von einem Moderator:
uiuiui, zu viel für mich ^^

geht das vielleicht auch einfacher? ich muss doch nur 1 Drucker mappen, nicht alle Drucker ermitteln, voreinstellungen und und und :)
 
hmmm, sorry, aber das Projekt hatte ich vor 2 Jahren und ich weiß selbst nicht mehr wie ich das gemacht hab :-)
 
Zurück