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   |   VB-Versionen: VB.NET07.04.08
Firewall-Status unter WinXP/Vista prüfen  Tipp des Monats

Das Beispiel prüft, ob die Firewall unter Windows XP/Vista eingeschaltet ist oder nicht. Zudem wird eine Abfrage durchgeführt ob es sich bei dem zugrundeliegenden Betriebssystem um Windows XP/Vista handelt oder nicht.

Autor:   Heinz PrelleBewertung:     [ Jetzt bewerten ]Views:  12.244 
www.visual-basic5.deSystem:  WinXP, Win7, Win8, Win10, Win11 Beispielprojekt auf CD 

Schalten Sie zum Testen die Firewall entweder aus- oder ein um ein Ergebnis zu bekommen. Das Beispiel testet zudem, ob es sich bei dem zugrundeliegenden Betriebssystem um WinXP bzw. Vista handelt.

Public Class Firewall
  ''' <summary>
  ''' Rückgabe Betriebssystem (True, wenn XP, andernfalls False)
  ''' </summary>
  Public ReadOnly Property OS() As Boolean
    Get
      Return Me.IsWindowsXPOrVista()
    End Get
  End Property
 
  ''' <summary>
  ''' Rückgabe Firewall Status (True, wenn aktiviert, andernfalls False)
  ''' </summary>
  Public ReadOnly Property ReturnFirewallState() As Boolean
    Get
      Return Me.IsFirewallEnabled()
    End Get
  End Property
  ''' <summary>
  ''' Prüfen, ob die Firewall eingeschaltet ist oder nicht.
  ''' </summary>
  Private Function IsFirewallEnabled() As Boolean
    ' Variablen deklarieren...
    Dim hObject As Object
    Dim cp As Object
    Dim State As Boolean
 
    Try
      ' ... und initialisieren...
      hObject = CreateObject("HNetCfg.FwMgr")
      cp = hObject.LocalPolicy.CurrentProfile
      ' Rückgabe = True
      If cp.FirewallEnabled Then
        State = True
      Else
        ' ... sonst False
        State = False
      End If
      ' Resourcen freigeben.
      cp = Nothing
      hObject = Nothing
      ' Status zurückgeben
      Return State
 
    Catch ex As Exception
      ' Wenn Fehler dann ist die Rückgaben = False
      Return False
    End Try
  End Function
  ''' <summary>
  ''' Windows Version ermitteln.
  ''' </summary>
  Private Function IsWindowsXPOrVista() As Boolean
    ' OS Version ermitteln und ...
    Dim OS As OperatingSystem = Environment.OSVersion
    ' prüfen ob es sich um Windows XP handelt.
    Dim Result As Boolean = OS.Platform = PlatformID.Win32NT AndAlso _
       ((OS.Version.Major = 5 AndAlso _
       OS.Version.Minor >= 1) OrElse _
       OS.Version.Major > 5)
    ' Handelt es sich um XP/Vista wird True zurückgegeben...
    If Result Then
      Return True
    Else
      ' ... sonst False
      Return False
    End If
  End Function
End Class

Aufrufbeispiel:

Private Sub Button1_Click(ByVal sender As System.Object, _
  ByVal e As System.EventArgs) Handles Button1.Click
 
  ' Klasse initialisieren.
  Dim fw As New Firewall
  ' Handelt es sich um WinXP/Vista? Wenn ja, dann...
  If fw.OS() Then
    ' wird das Funktionsergebnis an die Variable FirewallState übergeben.
    Dim FirewallState As Boolean = fw.ReturnFirewallState()
    ' Ergebnis aus FirewallState auswerten...
    Select Case FirewallState
      Case True
        ' Die Firewall ist eingeschaltet.
        MessageBox.Show(FirewallState.ToString() & _
          " Firewall is switched on", "Info")
      Case Else
        ' Die Firewall ist ausgeschaltet.
        MessageBox.Show(FirewallState.ToString() & _
          " Firewall is switched off", "Info")
    End Select
  Else
    ' Handelt es sich nicht um Windows XP/Vista wird dies signalisiert.
    MessageBox.Show("Operating system is not supported", "Info")
  End If
End Sub

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