Cita de: nts94 en 11 Julio 2011, 13:26 PM
Has probado a usar addr en vez de offset?
exactamente cuando haces referencia al puntero de una struct tienes que usar la directiva addr, ya que offset no "funciona" en esos casos, te pego una parte del code, almenos el cliente.
Código (asm) [Seleccionar]
.data?
S1 SOCKET ?
S2 SOCKET ?
Sin1 sockaddr_in <>
Sin2 sockaddr_in <>
WSAData WSADATA <>
Temp DD ?
.code
start:
invoke WSAStartup, 0101h, ADDR WSAData
invoke socket, PF_INET, SOCK_STREAM, IPPROTO_TCP
mov S1, eax
mov ax, AF_INET
mov Sin1.sin_family, ax
xor eax, eax
mov Sin1.sin_addr, eax
invoke inet_addr, addr ServerIPAddress
mov Sin1.sin_addr, eax
invoke htons, ListeningPort ; listen to a specified port
mov Sin1.sin_port, ax
;invoke bind, S1, ADDR Sin1, SIZEOF sockaddr_in
;invoke closesocket, S2
;mov eax, SIZEOF sockaddr_in
;mov Temp, eax
;invoke accept, S1, ADDR Sin2, ADDR Temp
;mov S2,eax
invoke connect, S1, addr Sin1, SIZEOF Sin1
mov TempVar, SIZEOF SendBuff
invoke send, S1, addr SendBuff, TempVar, 0creo que te daría la idea ._.
Nox.
, y como dice thunder, haste una ver en pdf, así podes llevarla a CLS XD, solo una pregunta, el ret 4 que haces con los valores que queda en la pila?, talvez esto no afecte en nada el funcionamiento del soft, pero no hay que dejar basura en la pila

oder ahora que sabe rompar esos algoritmos, se va a cargar a todo mundo.