vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Erstellen von dynamischen Kontextmen?s - wann immer Sie sie brauchen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück
Rubrik: System/Windows · Sonstiges   |   VB-Versionen: VB4, VB5, VB615.09.01
Umgebungsvariablen auslesen (Environ...)

Sie glauben gar nicht, welche Informationen sich alles mit der Environ()-Funktion ermitteln lassen...

Autor:   Dieter OtterBewertung:     [ Jetzt bewerten ]Views:  28.459 
www.tools4vb.deSystem:  Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 Beispielprojekt auf CD 

Das Betriebssystem verfügt über eine Tabelle, in der bestimmte Werte der Systemumgebung gespeichert sind - man spricht hier meist von Umgebungsvariablen. Einzelne Werte lassen sich in Visual Basic über die Environ-Funktion "abrufen".

' Ermitteln des Windows-Verzeichnisses
MsgBox "WinDir = " & Environ$("windir")

Ich wette, dass viele unter Ihnen die Environ-Funktion noch gar nicht gekannt haben - und wenn doch, dann meist nur in Verbindung mit dem obigen Code.

Sie glauben aber gar nicht, welche Informationen sich so alles mit der Environ()-Funktion ermitteln lassen!

Das nachfolgende Beispiel zeigt, wie sich ALLE in der Betriebssystem-Ungebungstabelle gespeicherten Informationen abrufen lassen. Plazieren Sie hierzu auf eine Form ein ListView-Control (ListView1) und darunter oder daneben einen CommandButton (Command1). Öffnen Sie den Eigenschaften-Dialog des ListView-Controls, stellen die Ansicht auf 3 - Details und erstellen zwei Spalten: Schlüssel (Key) und Wert. Fügen Sie dann noch nachfolgenden Code in das Click-Ereignis von Command1 ein:

' Umgebungsvariablen auflisten
Private Sub Command1_Click()
  Dim iIndex As Integer
  Dim sResult As String
  Dim sKey As String
  Dim sValue As String
  Dim iPos As Integer
  Dim itemX As ListItem
 
  With ListView1
    ' ListView-Inhalt löschen
    .ListItems.Clear
 
    ' Environ() durchlaufen
    ' Beginnen mit 1
    iIndex = 1
    Do
      ' Umgebungsvariable auslesen
      sResult = Environ(iIndex)
 
      ' Wird ein Leerstring zurückgegeben, so ist das
      ' Ende der Liste erreicht
      If sResult <> "" Then
 
        ' = suchen
        iPos = InStr(sResult, "=")
        sKey = Left$(sResult, iPos - 1)
        sValue = Mid$(sResult, iPos + 1)
 
        ' dem ListView hinzufügen
        Set itemX = .ListItems.Add(, sKey, sKey)
        itemX.SubItems(1) = sValue
      End If
 
      ' Index um 1 erhöhen
      iIndex = iIndex + 1
    Loop Until sResult = ""
  End With
End Sub

Was passiert?
Das ListView wird mit allen in der System-Umgebungstabelle enthaltenen Informationen gefüllt. In der erste Spalte wird der Schlüssel (Key) angezeigt, die zweite Spalte enthält dementsprechend den dazugehörigen Wert.

Erstaunt?
Schauen Sie sich die Liste mal genau an. Hier sind Informationen enthalten, die Sie sonst nur mit Hilfe des Windows-API ermitteln könnten.

Programmieren kann so einfach sein
 

Dieser Tipp wurde bereits 28.459 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.

Neue Diskussion eröffnen

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