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-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Fortgeschrittene Programmierung
Re: Einwahleintrag mit Firewall 
Autor: barneby
Datum: 03.08.04 19:28

Ich zitiere hier mal den Original-Code von der URL von weiter oben, der besseren Übersicht wegen:

Private Sub Obtain_And_Change_ICF_Status(ByVal strConnection As String)
    On Error Goto ErrorHandler
 
    Dim SharingMgr As Object
    Dim EachConnection As Object
    Dim ConnectionProps As Object
    Dim item As Object
    Dim Previous_ICF_State As String
 
    Set SharingMgr = CreateObject("HNetCfg.HNetShare.1")
 
    If (Not (SharingMgr Is Nothing)) Then
        For Each item In SharingMgr.EnumEveryConnection
            Set EachConnection = _
                SharingMgr.INetSharingConfigurationForINetConnection(item)
 
            Set ConnectionProps = SharingMgr.NetConnectionProps(item)
 
            If (ConnectionProps.Name = strConnection) Then
                If EachConnection.InternetFirewallEnabled Then
                    EachConnection.DisableInternetFirewall
 
                    Previous_ICF_State = "ICF war aktiviert und ist jetzt" & _
                      "deaktiviert."
 
                Else
                    EachConnection.EnableInternetFirewall
 
                    Previous_ICF_State = "ICF war deaktiviert und ist jetzt" & _
                      "aktiviert."
 
                End If
 
                Exit For
            End If
        Next item
    End If
 
ExitSub:
    If (Len(Previous_ICF_State) <> 0) Then MsgBox Previous_ICF_State
 
    Exit Sub
 
ErrorHandler:
    Select Case Err.Number
        Case 55                 '   "Datei bereits geöffnet"
            Close #1            '   Datei schließen
 
        Case 70                 '   "Zugriff verweigert"
            Call MsgBox("Zugriff aufgrund fehlender Rechte verweigert.", _
                        vbInformation Or vbOKOnly)
 
        Case 429                '   Komponentenerstellung nicht möglich
            Call MsgBox("Komponente kann nicht erstellt werden.", _
                        vbInformation Or vbOKOnly)
 
        Case Else               '   andere auftretende Fehler hier behandeln
 
    End Select
 
    Resume Next
 
End Sub
Ohne Beschreibung ist es nicht einfach einen baruchbaren Test zu starten. Wie müßte z.B. der Aufruf aussehen für den Status der Firewall? Oder für das Ein/Ausschalten? Sonst werden nähmlich nur Fehler produziert, die dummerweise weiter unten nicht abgefangen werden, und es kommt immer die gleiche Meldung: "ICF war aktiviert und ist jetzt deaktiviert."

Eine andere Überlegung für das Problem möchte ich doch noch anstellen. Wenn es dem Benutzer, der meinetwegen Admin-Rechte hat, möglich ist die Firewall nach Belieben ein- und auszuschalten, warum soll es dann ein Programm, welches API-Aufrufe benutzt, nicht möglich sein?
Windows müßte ja sonst erkennen wie die Firewall ausgeschaltet wurde. Das eben der entsprechende Dialog aufgerufen wurde, das Häckchen weggemacht wurde, auf OK geklickt wurde, usw. Die einzige Lösung wäre, das es keinen Weg über das API gibt. Was aber dann die ganze Diskussion zunichte machen würde...

barneby
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Einwahleintrag mit Firewall911ARTsoft02.08.04 18:01
Re: Einwahleintrag mit Firewall637ModeratorMartoeng02.08.04 20:16
Re: Einwahleintrag mit Firewall656FrankG02.08.04 20:27
Re: Einwahleintrag mit Firewall680GuidoE02.08.04 20:57
Re: Einwahleintrag mit Firewall616FrankG02.08.04 21:02
Re: Einwahleintrag mit Firewall626GuidoE02.08.04 21:14
Re: Einwahleintrag mit Firewall618FrankG02.08.04 21:23
Re: Einwahleintrag mit Firewall621ModeratorMartoeng02.08.04 21:23
Re: Einwahleintrag mit Firewall594GuidoE03.08.04 00:52
Re: Einwahleintrag mit Firewall592ModeratorMartoeng03.08.04 01:12
Re: Einwahleintrag mit Firewall602GuidoE03.08.04 01:29
Re: Einwahleintrag mit Firewall611ARTsoft03.08.04 09:17
Re: Einwahleintrag mit Firewall605FrankG03.08.04 09:42
Re: Einwahleintrag mit Firewall609barneby03.08.04 19:28
Re: Einwahleintrag mit Firewall650ARTsoft04.08.04 09:41
Re: Einwahleintrag mit Firewall687ARTsoft04.08.04 13:53

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 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