I get invalid parameters error on this DirectPlayLobby call ...anybody has any ideeas ? ;)




.data

ip_size dd 16
ip_buffer db "192.168.000.001",0,0
db 32 dup(0)

dpl_address_size dd 1024
dpl_address_buffer dd 1024 dup(0)

szDPLCreateAddressFail db "Create DPL Create Address Fail!",0
szDPLCreateAddressOK db "Create DPL Create Address OK!",0
.code

Create_Net_Address:



mov eax,[dpl_address_size]
push eax

mov eax,offset dpl_address_buffer
push eax

mov eax,[ip_size]
push eax

mov eax,offset ip_buffer
push eax

mov eax,offset DPAID_INet
push eax

mov eax,offset DPSPGUID_TCPIP
push eax

mov eax,[lp_dplobby1]
push eax ; Object

mov eax,[eax] ; vtable addr
call [eax+DPL_CreateAddress] ; call vector

.IF eax != DP_OK
push eax
call OutputDebugStringA,offset szDPLCreateAddressFail
pop eax
call OutputDebugValue,eax
jmp end_loop
.ELSE
call OutputDebugStringA,offset szDPLCreateAddressOK
.ENDIF
ret

Posted on 2002-05-07 16:18:46 by BogdanOntanu
I can't even find info about DirectPlayLobby :/
Posted on 2002-05-07 16:40:16 by Hiroshimator
its a stupid one as allways ;)



mov eax,[dpl_address_size]
push eax


shoud be



mov eax, offset dpl_address_size
push eax


simple ...
Posted on 2002-05-09 18:16:35 by BogdanOntanu
Should that not be applied to all the MOV EAX, ?? And can you not use ADDR instead of OFFSET ??
Posted on 2002-05-10 09:55:46 by Dracton