AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Code-Bibliothek Neuen Beitrag zur Code-Library hinzufügen Delphi Windows Firewall - Eintrag erstellen / löschen / ändern
Thema durchsuchen
Ansicht
Themen-Optionen

Windows Firewall - Eintrag erstellen / löschen / ändern

Ein Thema von fkerber · begonnen am 2. Mär 2009 · letzter Beitrag vom 5. Mär 2009
Antwort Antwort
Seite 4 von 4   « Erste     234   
Dezipaitor

Registriert seit: 14. Apr 2003
Ort: Stuttgart
1.701 Beiträge
 
Delphi 7 Professional
 
#31

Re: Windows Firewall - Eintrag erstellen / löschen / ändern

  Alt 4. Mär 2009, 19:53
Zitat von sirius:
Ja das hoffe ich doch. Und selbst da finde ich es unbefriedigend.

Verstehe ich das nur grad falsch? Warum kann ein Programm sich eigenhändig in die ExceptionList meiner Firewall eintragen? Ich hoffe mal dass das nicht geht.
Der ursprüngliche Code fragt nur den FW Status ab. Aber das macht er, indem er erstmal alle Rechte anfordert. Das ist aber falsch, wenn man nur mal was lesen will, da man in diesem Fall immer Adminrechte braucht. Mit dem Rest hat das nichts zu tun. Schreibend braucht man da sowieso Adminrechte - aber lesend nicht unbedingt.
Christian
Windows, Tokens, Access Control List, Dateisicherheit, Desktop, Vista Elevation?
Goto: JEDI API LIB & Windows Security Code Library (JWSCL)
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#32

Re: Windows Firewall - Eintrag erstellen / löschen / ändern

  Alt 4. Mär 2009, 19:54
Hi!

Ich habe nun diese genommen:

Delphi-Quellcode:
function IsWindowsXP: Boolean;
begin
  Result := (Win32MajorVersion = 5) and ( Win32MinorVersion = 1);
end;
Und damit funktioniert der Test vollkommen zufriedenstellend!
Danke für deine Mühe - ich werde es im Beitrag ergänzen/austauschen.


@Sirius:
Ich glaube die Aussage war nur auf die IsWindowsFirewallServiceActive-Funktion bezogen...


Ciao, Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
Dezipaitor

Registriert seit: 14. Apr 2003
Ort: Stuttgart
1.701 Beiträge
 
Delphi 7 Professional
 
#33

Re: Windows Firewall - Eintrag erstellen / löschen / ändern

  Alt 4. Mär 2009, 19:59
Du musst auf SP2 oder höher testen. Sonst kommt wieder ein TRUE raus!
Christian
Windows, Tokens, Access Control List, Dateisicherheit, Desktop, Vista Elevation?
Goto: JEDI API LIB & Windows Security Code Library (JWSCL)
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#34

Re: Windows Firewall - Eintrag erstellen / löschen / ändern

  Alt 4. Mär 2009, 21:02
Hi!

Ist das hier eine praktikable Lösung? Es sieht nicht danach aus, aber was besseres ist mir nicht präsent...

Delphi-Quellcode:
function IsWindowsXP: Boolean;
begin
  Result := (Win32MajorVersion = 5) and ( Win32MinorVersion = 1) and (strtoint(copy(Win32CSDVersion,length(Win32CSDVersion),1))>=2);
end;

Ciao, Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#35

Re: Windows Firewall - Eintrag erstellen / löschen / ändern

  Alt 5. Mär 2009, 16:26
Falls irgend möglich würde ich auf das Abfragen der Windows Version verzichten.
Beispiel:
Die Funktion GetDefaultPrinterA() gibt es erst ab Windows 2000 (und höher).
Man könnte jetzt die Windowsversion abfragen und dann so reagieren:
Wenn WindowsVersion >= 2000 dann verwende GetDefaultPrinterA() anderfalls schau in die Registry oder die Win.ini.

Eine andere Strategie wäre mit GetProcAddress() zu prüfen, ob es die Funktion GetDefaultPrinterA() gibt.
Falls ja, benütze die Funktion, falls nein, erfolgt ein Fallback auf die älteren Alternativen.
Eine (unsichere) Abfrage der Windows Version wird hier nicht nötigt.

Übertragen auf die Firewall Geschichte heisst das:
Zuerst prüfen, ob die modernste API verfügbar ist (also ob die ProgID 'HNetCfg.FwMgr' registriert ist).
Falls nicht arbeite mit der API der älteren Windows Versionen.
Villeicht kommt ja ein Servicepack, der fehlende Funktionalität in den älteren Windowsversionen nachrüstet.
ok, ich glaube nicht mehr an den Weihnachtsmann, aber so ist man auf alles gerüstet
Andreas
  Mit Zitat antworten Zitat
Dezipaitor

Registriert seit: 14. Apr 2003
Ort: Stuttgart
1.701 Beiträge
 
Delphi 7 Professional
 
#36

Re: Windows Firewall - Eintrag erstellen / löschen / ändern

  Alt 5. Mär 2009, 17:36
Hier geht es nicht um die Verfügbarkeit einer API Funktion, sondern, ob ein Dienst eine FW implementiert hat oder nur die "Gemeinsame Internetnutzung". In XP < SP2 gibt es keine FW, und so würde ohne die Abfrage, trotzdem ermittelt, dass eine Windows Firewall existiert.

Natürlich geht es hier nur um die Windows Interne FW. 3rd Party FW sind nicht abgedeckt.
Christian
Windows, Tokens, Access Control List, Dateisicherheit, Desktop, Vista Elevation?
Goto: JEDI API LIB & Windows Security Code Library (JWSCL)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 4 von 4   « Erste     234   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:13 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz