Le pregunté a la IA y me soltó esto:
Para agregar una IP a un ámbito de firewall en Delphi, puedes utilizar la biblioteca WinAPI para acceder a las funciones y estructuras de Windows necesarias. Aquí tienes un ejemplo de cómo hacerlo:
Código Delphi
[-]uses
WinAPI.Windows, WinAPI.IpHlpApi, WinAPI.IpTypes;
procedure AddIPToFirewallScope(const ipAddress: string);
var
fwPolicy2: INetFwPolicy2;
fwRules: INetFwRules;
fwRule: INetFwRule;
begin
fwPolicy2 := CreateComObject(CLASS_NetFwPolicy2) as INetFwPolicy2;
fwRules := fwPolicy2.Rules;
fwRule := CreateComObject(CLASS_NetFwRule) as INetFwRule;
fwRule.Name := 'MiReglaDeFirewall'; fwRule.Description := 'Permite acceso desde la IP especificada'; fwRule.Action := NET_FW_ACTION_ALLOW; fwRule.Direction := NET_FW_RULE_DIR_IN; fwRule.Enabled := True;
fwRule.RemoteAddresses := ipAddress;
fwRules.Add(fwRule);
end;
Puedes llamar a esta función AddIPToFirewallScope pasando la dirección IP que deseas agregar como parámetro. Asegúrate de que tu aplicación tenga los permisos necesarios para acceder y modificar las reglas del firewall.