vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#

https://www.vbarchiv.net
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:  Views:  9.356 
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



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.
 
 
Copyright ©2000-2024 vb@rchiv Dieter OtterAlle 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.