Я создаю программное обеспечение, которое позволяет открывать порты при определенных условиях для некоторых IP-адресов (v4).У меня есть этот код, чтобы добавить маршрут.Работает нормально:
procedure TfrmMain.AddAntiHookAllowRuleTest();
var
fwPolicy2 : INetFwPolicy2;
newRule : INetFWRule;
begin
// Create the FwPolicy2 object
fwPolicy2 := INetFwPolicy2(CreateOleObject( 'HNetCfg.FwPolicy2' ));
// Create a Rule object
newRule := INetFWRule(CreateOleObject('HNetCfg.FWRule'));
// Configure Rule object
newRule.Name := 'AHOOK_SELF_ALLOW_RUTE';
newRule.Description := 'Permitir todas las conexiones al Anti Hook a distintos puertos basado en el IP de los usuarios';
newRule.Applicationname := Application.ExeName;
newRule.Action := NET_FW_ACTION_ALLOW;
newRule.Direction := NET_FW_RULE_DIR_IN;
newRule.Protocol := NET_FW_IP_PROTOCOL_TCP;
newRule.LocalPorts := '8080,8081';
newRule.Enabled := true;
newRule.InterfaceTypes := 'LAN';
//newRule.Grouping := 'CCN Antihook';
//Add a new rule object
FwPolicy2.Rules.Add( newRule );
end;
Но мне нужно иметь возможность добавлять или удалять некоторые IP-адреса в разделе «Удаленный адрес» области.В брандмауэре Windows при редактировании объекта маршрута это можно сделать на вкладке «Область».Как мне этого добиться?Заранее спасибо.
К вашему сведению: я импортирую NetFwTypeLib_TLB.Проще с этой библиотекой.