vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
SEPA-Dateien erstellen inkl. IBAN-, BLZ-/Kontonummernprüfung  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück
Rubrik: System/Windows · Desktop/Bildschirm/Display   |   VB-Versionen: VB2005, VB2008, VB201024.11.11
Alle Monitornamen in einem MultiScreen-System ermitteln

Die Namen aller Monitore im System werden mittels WMI ermittelt und in einer Liste gespeichert.

Autor:   Dietrich HerrmannBewertung:     [ Jetzt bewerten ]Views:  9.339 
ohne HomepageSystem:  WinXP, Win7, Win8, Win10, Win11 Beispielprojekt auf CD 

Wenn man die Namen aller Monitore, also gewissermaßen die Herstellerbezeichnung, im Programm braucht, können alle im System installierten und verwendeten Monitornamen mit der folgenden Funktion mittels WMI ermittelt und in einer Liste bereit gestellt werden.

Fügen Sie Ihrem Projekt zunächst den Verweis System.Management hinzu.

Imports System.Management
...
''' <summary>
''' Ermitteln der Monitorbezeichnungen in einem Multiscreen-System
''' </summary>
''' <returns>Stringliste mit den Namen der Monitore</returns>
Public Function DetectMonitorNames() As List(Of String)
  ' Ausgabeliste mit den Bezeichnungen
  Dim displayList As New List(Of String)
 
  ' Device-Info
  Dim info As ManagementObject
 
  ' Suchobjekt
  Dim WMIsearcher As ManagementObjectSearcher
 
  ' Name bzw. ID eines Display
  Dim displayName, displayID As String
 
  ' Objekteauswahl
  WMIsearcher = New ManagementObjectSearcher("SELECT * From Win32_PnPEntity")
 
  For Each info In WMIsearcher.Get()
    displayID = info("PNPDeviceID")
 
    ' DeviceID splitten, erstes Element ist 'Geräteart'
    Dim id() As String = Split(displayID, "\")
    If id(0) = "DISPLAY" Then
      ' wenn Geräteart DISPLAY, dann Name in Liste speichern
      displayName = info("Caption")
      displayList.Add(displayName)
    End If
  Next 
 
  Return displayList
End Function

Der Aufruf ist denkbar einfach:

Dim MonitorNames As List(Of String) = DetectMonitorNames

Dieser Tipp wurde bereits 9.339 mal aufgerufen.

Voriger Tipp   |   Zufälliger Tipp   |   Nächster Tipp

Über diesen Tipp im Forum diskutieren
Haben Sie Fragen oder Anregungen zu diesem Tipp, können Sie gerne mit anderen darüber in unserem Forum diskutieren.

Aktuelle Diskussion anzeigen (4 Beiträge)

nach obenzurück


Anzeige

Kauftipp Unser Dauerbrenner!Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv  Vol.6
(einschl. Beispielprojekt!)

Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
- nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten
- Symbol-Galerie mit mehr als 3.200 Icons im modernen Look
Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m.
 
   

Druckansicht Druckansicht Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel