vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Brandneu! sevEingabe v3.0 - Das Eingabecontrol der Superlative!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück
Rubrik:    |   VB-Versionen: VB2005, VB2008, VB201004.07.11
Standard-Drucker systemweit festlegen

Mit dieser Funktion lässt sich der ausgewählte Drucker systemweit als neuer Standard-Drucker festlegen.

Autor:  Dieter OtterBewertung:     [ Jetzt bewerten ]Views:  1.635 
http://www.tools4vb.de/System:  WinXP, Win7, Win8, Win10, Win11 Beispielprojekt 

Mit nachfolgender kleiner Funktion lässt sich der Standard-Drucker unter Windows systemweit ändern.

Die Funktion erwartet hierbei den Namen des neuen Standard-Druckers und gibt im Erfolgsfall den Wert True zurück.

Das Setzen des neuen Standard-Druckers erfolgt wie WMI, d.h. die Anwendung benötigt einen Verweis auf die System.Management-Klasse.

''' <summary>
''' Legt den übergebenen Drucker als neuen Standard-Drucker fest
''' </summary>
''' <param name="PrinterName">Name des Druckers</param>
''' <returns>True, wenn erfolgreich. Andrnfalls False</returns>
Public Function SetDefaultPrinter(ByVal PrinterName As String) As Boolean
  Dim oWMI As System.Management.ManagementClass
  Dim oInstances As System.Management.ManagementObject
  Dim bFound As Boolean = False
 
  oWMI = New System.Management.ManagementClass("\root\cimv2:Win32_Printer")
  For Each oInstances In oWMI.GetInstances
    If oInstances("Name").ToString.ToLower = PrinterName.ToLower Then
      ' Standard-Drucker neu festlegen
      oInstances.InvokeMethod("SetDefaultPrinter", Nothing)
      bFound = True
      Exit For
    End If
  Next
  oWMI.Dispose()
 
  Return bFound
End Function