[firebase-br] RES: Firewall do Windons

José Aparecido da Silva joseasilva em bol.com.br
Seg Out 16 16:36:20 -03 2006


Testei o codigo do Marlon [marlon em multi-informatica.com.br]
e funcionou direitinho. Segue abaixo o código completo. Só não esquece de
acrescentar Registry no uses.


procedure TForm1.BitBtn1Click(Sender: TObject);
var
Reg:TRegistry;
CtrlSet:string;
begin
    Reg := TRegistry.Create;
    Reg.RootKey := HKEY_LOCAL_MACHINE;
    Reg.OpenKey('SYSTEM\Select', False);
    CtrlSet := FormatFloat('000',Reg.ReadInteger('Current'));
    Reg.CloseKey;
    //Libera a porta 3050 usada pelo Firebird
    Reg.OpenKey('SYSTEM\ControlSet' + CtrlSet +
'\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\GloballyOp
enPorts\List', True);
    if (not Reg.ValueExists('3050:TCP')) then
Reg.WriteString('3050:TCP','3050:TCP:*:Enabled:Firebird');
    Reg.CloseKey;
    Reg.Free;
end;


-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de alexandre.bittencour
Enviada em: segunda-feira, 16 de outubro de 2006 16:03
Para: lista
Assunto: [firebase-br] Firewall do Windons
Prioridade: Alta

Abaixo tenho 2 codigos, ambos tem a mesma funcao, liberar a porta do
firewall 3050 para uso do firebird em rede, porem a porta naum esta sendo
liberada....alguem poderia analizar os codigos e verificar o que a de
errado....acho que e de interesse de muitos, pois seria melhor ja deixar a
porta liberada via delphi... 

Primerio codigo: 

procedure TForm1.Button2Click(Sender: TObject); 
var 
Reg:Tregistry; 
CtrlSet:string; 
begin 
//Pega o ControlSet que esta sendo usado pelo windows 
Reg.OpenKey('SYSTEM\Select', False); 
CtrlSet := FormatFloat('000',Reg.ReadInteger('Current')); 
Reg.CloseKey; 

//Libera a porta 3050 usada pelo Firebird 
Reg.OpenKey('SYSTEM\ControlSet' + CtrlSet
+'\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\GloballyO
penPorts\List', 
True); 
if (not Reg.ValueExists('3050:TCP')) 
then Reg.WriteString('3050:TCP','3050:TCP:*:Enabled:Firebird'); 
Reg.CloseKey; 
end; 


Segundo codigo: 

procedure TForm1.Button2Click(Sender: TObject); 
begin 
WinExec('netsh.exe "firewall add portopening protocol=TCP port=3050 
name=""Firebird"" 
mode=ENABLE scope=SUBNET"', SW_SHOW); 
end;
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa





Mais detalhes sobre a lista de discussão lista