-
-
[求助]masm32编程bind函数的问题
-
发表于: 2008-6-25 08:25 4046
-
这样一段程序
_test proc
local @Data:WSADATA
local @SocketAddr:sockaddr_in
local @optval:byte
invoke WSAStartup,101h,addr @Data
invoke WSASocket,AF_INET,SOCK_STREAM,0,0,0,0
mov ConnectSocket,eax
invoke RtlZeroMemory,addr @SocketAddr,sizeof @SocketAddr
mov @SocketAddr.sin_family,AF_INET
invoke htons,wPort
mov SocketAddr.sin_port,ax
invoke bind,ConnectSocket,addr @SocketAddr,sizeof @SocketAddr
ret
_test endp
其中ConnectSocket是全局变量
当wPort这样定义时:wPort equ 1000,bind执行成功
当wPort这样定义时:wPort dw 1000,bind执行失败。GetLastError返回10014(系统检测到在一个调用中尝试使用指针参数时的无效指针地址)
我通过调试器检查各个参数和执行情况,没有发现不同,困扰了很长时间。请各位知道的帮帮我。
在此谢过
_test proc
local @Data:WSADATA
local @SocketAddr:sockaddr_in
local @optval:byte
invoke WSAStartup,101h,addr @Data
invoke WSASocket,AF_INET,SOCK_STREAM,0,0,0,0
mov ConnectSocket,eax
invoke RtlZeroMemory,addr @SocketAddr,sizeof @SocketAddr
mov @SocketAddr.sin_family,AF_INET
invoke htons,wPort
mov SocketAddr.sin_port,ax
invoke bind,ConnectSocket,addr @SocketAddr,sizeof @SocketAddr
ret
_test endp
其中ConnectSocket是全局变量
当wPort这样定义时:wPort equ 1000,bind执行成功
当wPort这样定义时:wPort dw 1000,bind执行失败。GetLastError返回10014(系统检测到在一个调用中尝试使用指针参数时的无效指针地址)
我通过调试器检查各个参数和执行情况,没有发现不同,困扰了很长时间。请各位知道的帮帮我。
在此谢过
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)
赞赏
看原图
赞赏
雪币:
留言: