• Domingo 22 de Diciembre de 2024, 09:30

Autor Tema:  Una Hermosa Api Llamada Gettcptable  (Leído 1279 veces)

Chinta Nemoto

  • Nuevo Miembro
  • *
  • Mensajes: 23
    • Ver Perfil
Una Hermosa Api Llamada Gettcptable
« en: Viernes 20 de Febrero de 2004, 02:01 »
0
Holas, estoy usando una funcion para hacer un firewall...
La que realmente importa ahora es la funcion GetTcpTable, es una funcion externa, en una dll llamada "iphlpapi.dll".
El problema que tengo es en la pasada de parametros (la funcion devuelve un codigo de error que es 0 si es correcto, y cualquier otro valor si hay un error, el valor indica el error, un codigo de error comun y corriente).
*******Ahora les voy a mostrar los tipos de dato requeridos para la funcion
type
  MIB_TCPROW = record
    dwState: dword;
    dwLocalAddr: dword;
    dwLocalPort: dword;
    dwRemoteAddr: dword;
    dwRemotePort: dword;
  End;
  MIB_TCPTABLE = record
    dwNumEntries: dword;
    table: array[0..100] of MIB_TCPROW;
  End;

***********Ahora dos tipos de puntero********************

  pDW = ^dword;
  pTabla = ^MIB_TCPTABLE;

***Ahora, dos variables declaradas en la seccion Private del form****

private
   tabla: MIB_TCPTABLE;
   conexion: MIB_TCPROW;

*************Ahora, en la seccion Implementation****************
//Externa
function GetTcpTable(table:pTabla;pdwSize:pDW;bOrder: boolean):DWORD; External 'iphlpapi.dll';
//Form.Create
procedure TForm1.FormCreate(Sender: TObject);
var
  retval: DWORD;
  bucle:integer;
  x: Boolean;
  tamanio: DWORD;
begin
  show;
  tamanio:=sizeof(tabla);
  x:=false;
  retval:=GetTcpTable(@tabla,@tamanio,x);
  //lo que sigue no viene al caso**************************************
End;

Vean este codigo, no entiendo xq me da error 87 (parametro/parametros no valido/validos)