Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 04-02-2024
elrayo76 elrayo76 is offline
Miembro
 
Registrado: ene 2004
Ubicación: En la tierra, por eso mis archivos en la tierra y no en la nuebe...
Posts: 290
Poder: 21
elrayo76 Va por buen camino
Cita:
Empezado por Delphi01 Ver Mensaje
El error de "Range Check Error" ocurre cuando se accede a un índice fuera de los límites de un array. En el código que has proporcionado, el error ocurre en la línea donde se accede a recTcpTable.Table[i].dwRemoteAddr. Esto puede suceder si el valor de i es mayor o igual al número de entradas en la tabla recTcpTable.
Se que el error es en ese punto, pero no es por lo que dices. Si te fijas en el IF veras que se acceder a los otros valores del record y he comprobado que los otros no dan error. El error me suena mas a que algo no funciona en Delphi 11 con respecto a los tipos de datos que dice la documentación de Microsoft para el record que uso.

Si buscas en Internet podrás ver que usan cosas similares, pero solo que está pensado con Delphi 7.

He probado cambiar el tipo de dato del record para "dwRemoteAddr" y el error no se da, pero no es lógico dado que la documentación de Microsoft como dije utiliza un DWORD. Este cambio hace que tenga que cambpiar y revisar todo el código.

Lo que se me ocurre pensándolo bien es que dwRemoteAddr este guardando una dirección de IPv6 y que que como utilizo todo con IPv4 por eso da el error. Pero ya te digo que no lo se, tendría que buscar la forma de ver que es lo que intenta obtener

La validación que dices de poner no la veo lógica, por mas que pueda funcionar, ya que si le dices que el ciclo este entre 0 y el máximo - 1 de la tabla no debería nunca pasarse de la cantidad de items del array.

Casimiro, voy a probar con lo que tu me dices, puede que el problema como comente una líneas mas arriba puede ser dado por la versión de IP que quiere obtener y que el tipo de dato no sea el adecuado. Si es así y lo que propones funciona sería una solución y luego vería el tema de las direcciónes de IPv6

Saludos
__________________
Si tienes una función o procedimiento con diez parámetros, probablemente hayas olvidado uno
Responder Con Cita
  #2  
Antiguo 04-02-2024
elrayo76 elrayo76 is offline
Miembro
 
Registrado: ene 2004
Ubicación: En la tierra, por eso mis archivos en la tierra y no en la nuebe...
Posts: 290
Poder: 21
elrayo76 Va por buen camino
He podido probar las dos opciones que mencionan, tanto lo de Delphi01 como lo de Casimiro y ninguna funciona.

Lo de Delphi01 nunca sucede, no se pasa del máximo de la tabla. Lo que comenta Casimiro he modificado para usar "
TCP_TABLE_BASIC_ALL" en la función pero no da resultado, después el resto es todo igual a como lo tengo yo, sacando donde se muestran los datos, pero ese no es el problema porque nunca llega esa parte.

Saludos
__________________
Si tienes una función o procedimiento con diez parámetros, probablemente hayas olvidado uno
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Cerrar conexiones que quedan abiertas arantzal Varios 4 02-05-2007 12:40:45
Tu computadora en cualquier computadora egostar La Taberna 2 17-03-2007 03:46:40
instancias abiertas muli Firebird e Interbase 0 07-07-2004 19:48:23
Tablas Abiertas Ulises Providers 2 02-03-2004 12:50:23
Ventanas abiertas Isaac Varios 3 11-02-2004 16:44:37


La franja horaria es GMT +2. Ahora son las 17:46:58.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi