![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Отключить брандмауер ХР [D7, Win2k, WinXP]
ziArt © (2007-06-04 13:04:00)Пишу тестовую систему, статистику со всех компов собираю через UDP пакеты. Возникла проблема на ОС ХР. Подскажите как програмно при запуске серверной части та что собирает данные из сети прописать ее в брандмауер стандартный как разрешонную. На 2000 все работает отлично. Спасибо.
dzr_gregory (2007-06-08 12:23:00) [1]Я юзал что-то вроде:
function WriteKey(KeyName, Param, Value: string; Root: HKEY = HKEY_CURRENT_USER): boolean; // Пишет значение в реестр
Var Reg : TRegistry;
begin
Reg := TRegistry.Create;
try
Result := false;
Reg.RootKey := Root;
Reg.OpenKey(KeyName, true);
Reg.WriteString(Param, Value);
Result := true;
finally
Reg.Free;
end;
end;
function SetMSFirewallRule(AppPath, Name: string; Enabled: boolean = false): boolean; // Добавляет правило в MS Firewall
Var s, e: string;
begin
if Enabled then
e := 'Enabled'
else
e := 'Disabled';
s := AppPath + ':*:' + e + ':' + Name;
Result := WriteKey('\System\ControlSet001\Services\SharedAccess\' +
'Parameters\FirewallPolicy\StandardProfile\' +
'AuthorizedApplications\List',
AppPath, s, HKEY_LOCAL_MACHINE);
end;
Eraser (2007-06-04 14:06:00) [2]> [0] ziArt (04.06.07 13:04)
выполнить через cmd
netsh advfirewall firewall add rule dir=in name = "WMI" program=%systemroot%\system32\svchost.exe service=winmgmt action = allow protocol=TCP localport=any
примерно так, только свои параметры подставить надо.