RAS: Create a DUN icon  

Send By: A Saber
Web : N.A.
Email: N.A.
Date: 03/01/03

Tip accessed 435 times

 



Add Registry in the uses line of your form

Put a TMemo (memo1) and one TButton (button1)

And add this code in the OnClick event of button1


 procedure TForm1.Button1Click(Sender: TObject);
 var
 {Creamos la variable para el nombre de usuario que
  va en el registro de Windows}
 usuario:tregistry;
 begin
   {Y empezamos a generar el archivo DUN
   Primero la seccion ENTRY (info de la conexion)}
   memo1.lines.Add('[Entry]');
   memo1.lines.Add('Entry_Name=NOMBRECONEXION');
   {Este será el nombre de la conexion}
   memo1.lines.Add('Import_Name=NOMBRECONEXION');
   {Permitir o no multienlace}
   memo1.lines.Add('Multilink=no');
   memo1.lines.Add(' ');
   {Seccion PHONE (datos del numero remoto)}
   memo1.lines.Add('[Phone]');
   {¿Omitir codigo de area? Por defecto YES}
   memo1.lines.Add('Dial_As_Is=Yes');
   {El numero a llamar}
   memo1.lines.Add('Phone_Number=908111111');
   {Codigo de área}
   memo1.lines.Add('Area_Code=0');
   {Codigo de Pais}
   memo1.lines.Add('Country_Code=34');
   {ID de pais 34=España}
   memo1.lines.Add('Country_ID=34');
   memo1.lines.Add(' ');
   {Seccion TCP/IP}
   memo1.lines.Add('[TCP/IP]');
   {Especificar direccion IP (normalmente nos la da el servidor, asi que no.}
   memo1.lines.Add('Specify_IP_Address=no');
   {DNS primario}
   memo1.lines.Add('DNS_address=0.0.0.0');
   {DNS secundario}
   memo1.lines.Add('DNS_Alt_address=0.0.0.0');
   {Servidor WINS}
   memo1.lines.Add('WINS_address=0.0.0.0');
   {Servidor WINS secundario}
   memo1.lines.Add('WINS_Alt_address=0.0.0.0');
   {Puerta de enlace en maquina remota, no conocemos la puerta de enlace y
    nos la proporciona la maquina remota (por defecto YES)}
   memo1.lines.Add('Gateway_On_Remote=yes');
   {Guardamos el memo a un archivo .DUN}
   memo1.Lines.SaveToFile('c:\conexion.dun');

   {Abrimos el registro de WINDOWS}
   usuario := TRegistry.Create;
   usuario.RootKey := HKEY_CURRENT_USER;
   {Nos posicionamos en nuestra conexion (aunque realmente aun no existe)}
   usuario.openkey('RemoteAccess\Profile\NOMBRECONEXION',true );
   {E introducimos el nombre de usuario}
   usuario.writestring('User', 'NOMBREUSUARIO');
   {Cerramos el registro}
   usuario.closekey;
   {Creamos la conexion importando el archivo que acabamos de crear
    y la ejecutamos (rnaui.dll no permite crear la conexion sin ejecutarla)}
   winexec('Rundll  Rnaui.dll,RnaRunImport c:\conexion.dun', 0);
 end;