Hinzufügen einer Anwendungs-Firewall-Regel zu privaten und öffentlichen Netzwerken über die win7 FirewallAPI

Ein kleiner Hintergrund: Grundsätzlich möchte ich privaten und öffentlichen Netzwerken eine Programm-Firewall-Zugriffsregel hinzufügen.

Früher habe ich diese "Netsh-Firewall" verwendet. Add allowedprogram program = "Path .." name = Anwendungsname ENABLE scope = ALL profile = CURRENT

Aber jetzt möchte ich den Prozess ein wenig mit einem COM-Objekt automatisieren. Fand dieses glänzende Stück Code -http://web.archive.org/web/20070707110141/http://www.dot.net.nz/Default.aspx?tabid=42&mid=404&ctl=Details&ItemID=8

Und nach der Implementierung der Klasse habe ich versucht, FirewallHelper.Instance.GrantAuthorization (@ "Path ...", "AppName", NET_FW_SCOPE_.NET_FW_SCOPE_ALL, NET_FW_IP_VERSION_.NET_FW_IP_VERSION_ANY) zu verwenden.

Das Problem, mit dem ich konfrontiert bin, ist, dass die GrantAuthorization-Methode nur eine Regel für das öffentliche oder private Netzwerk hinzufügt, während mein alter netsh-Befehl 2 Regeln für 1 für jedes Netzwerk enthält.

Die Befehle scheinen tatsächlich sehr ähnlich zu sein, so dass es mich irgendwie nervt.

Also ... wie man beide Netzwerkregeln hinzufügt?

Shaun

Antworten auf die Frage(3)

Ihre Antwort auf die Frage