FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
EAccessViolation at address 00000000
Buenas a todos, esto es de chiste y me tiene loco.
Tengo la siguiente función: function configureSocket(Puerto:Integer; var ClientSocket:TClientSocket; PcName : String; ByIP : boolean = False): boolean; begin try ClientSocket := TClientSocket.Create(nil); If ( ByIP ) then ClientSocket.Address := PcName else ClientSocket.Host:= PcName; ClientSocket.Port:= Puerto; ClientSocket.ClientType:= ctBlocking; ClientSocket.Open; // si no esta activo salta al except Result:= true; except Result:= false end; end; pues bien, el ClienteSocket.Open, da excepción, y cuando se va al except, al hacer el Result:=false me da una excepción (EAccessViolation at address 00000000) alguien me puede decir por qué carajo (intentando ser "fino") me está pasando esto???? Gracias a todos |
#2
|
|||
|
|||
Primero de todo, usa las etiquetas code, se lee mejor.
Tienes una funcion, que creo que no funciona nunca, porque me parece que el try...except falla siempre. Si te fijas, le estas pasando el clientsocket como variable: Código:
function configureSocket(Puerto:Integer; var ClientSocket:TClientSocket; PcName : String; ByIP : boolean = False): boolean; Código:
ClientSocket := TClientSocket.Create(nil); Como no se que es lo que tiene que hacer esa funcion, no te puedo ayudar mas, pero parece que te sobra la linea para crear el ClientSocket. Tampoco has puesto como llamas a la funcion. |
|
|
|