亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? server.asm

?? 羅云彬32位匯編代碼
?? ASM
字號:
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Sample code for < Win32ASM Programming >
; by 羅云彬, http://asm.yeah.net
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Server.asm
; 使用 TCP 協議的聊天室例子程序 —— 服務器端
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; 使用 nmake 或下列命令進行編譯和鏈接:
; ml /c /coff Server.asm
; rc Server.rc
; Link /subsystem:windows Server.obj Server.res
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
		.386
		.model flat, stdcall
		option casemap :none   ; case sensitive
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Include 數據
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
include		windows.inc
include		user32.inc
includelib	user32.lib
include		kernel32.inc
includelib	kernel32.lib
include		wsock32.inc
includelib	wsock32.lib
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; equ 數據
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
DLG_MAIN	equ	2000
IDC_INFO	equ	2001
IDC_COUNT	equ	2002
WM_SOCKET       equ	WM_USER + 100
TCP_PORT	equ	9999
MAX_SOCKET	equ	100	;聊天室最大容量
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; 數據段
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
		.data?
hWinMain	dd	?
hSocket		dd	?
dwCount		dd	?
szReadBuffer	db	32768 dup (?)
szBuffer	db	32768 dup (?)
stTable		dd	MAX_SOCKET dup (?)
		.const
szErrBind	db	'無法綁定到TCP端口9999,請檢查是否有其它程序在使用!',0
szFormat	db	'【客戶端#%08x】- %s',0dh,0ah,0
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; 代碼段
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
		.code
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; 在客戶端列表中加上一個 socket
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
_AddClient	proc	_hSocket

		invoke	WSAAsyncSelect,_hSocket,hWinMain,WM_SOCKET,FD_READ or FD_CLOSE
		xor	ebx,ebx
		mov	esi,offset stTable
		.while	ebx <	MAX_SOCKET
			.if	! dword ptr [esi]
				push	_hSocket
				pop	[esi]
				inc	dwCount
				invoke	SetDlgItemInt,hWinMain,IDC_COUNT,dwCount,FALSE
				ret
			.endif
			inc	ebx
			add	esi,4
		.endw
		invoke	closesocket,_hSocket
		ret

_AddClient	endp
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; 從客戶端列表中去掉一個 socket
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
_RemoveClient	proc	_hSocket

		xor	ebx,ebx
		mov	esi,offset stTable
		mov	edi,_hSocket
		.while	ebx <	MAX_SOCKET
			.if	[esi] == edi
				invoke	closesocket,[esi]
				mov	dword ptr [esi],0
				dec	dwCount
				invoke	SetDlgItemInt,hWinMain,IDC_COUNT,dwCount,FALSE
				ret
			.endif
			inc	ebx
			add	esi,4
		.endw
		ret

_RemoveClient	endp
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; 處理接收到的TCP包
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
_RecvData	proc	_hSocket
		local	@dwRecv

		invoke	RtlZeroMemory,addr szReadBuffer,sizeof szReadBuffer
		invoke	recv,_hSocket,addr szReadBuffer,sizeof szReadBuffer,NULL
		.if	eax !=	SOCKET_ERROR
			mov	@dwRecv,eax
			invoke	wsprintf,addr szBuffer,addr szFormat,\
				_hSocket,addr szReadBuffer
;********************************************************************
; 按照客戶端列表逐一發送
;********************************************************************
			invoke	GetDlgItem,hWinMain,IDC_INFO
			mov	ebx,eax
			invoke	GetWindowTextLength,ebx
			invoke	SendMessage,ebx,EM_SETSEL,eax,eax
			invoke	SendMessage,ebx,EM_REPLACESEL,FALSE,addr szBuffer
			mov	esi,offset stTable
			xor	ebx,ebx
			.while	ebx <	MAX_SOCKET
				mov	edi,[esi]
				.if	edi
					invoke	lstrlen,addr szBuffer
					invoke	send,edi,addr szBuffer,eax,0
				.endif
				add	esi,4
				inc	ebx
			.endw
		.endif
		ret

_RecvData	endp
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; 初始化 Socket,綁定到服務TCP端口并監聽
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
_Init		proc
		local	@stWsa:WSADATA
		local	@stSin:sockaddr_in

		invoke	WSAStartup,101h,addr @stWsa
		invoke	socket,AF_INET,SOCK_STREAM,0
		mov	hSocket,eax
		invoke	WSAAsyncSelect,hSocket,hWinMain,WM_SOCKET,FD_ACCEPT

		invoke	RtlZeroMemory,addr @stSin,sizeof @stSin
		invoke	htons,TCP_PORT
		mov	@stSin.sin_port,ax
		mov	@stSin.sin_family,AF_INET
		mov	@stSin.sin_addr,INADDR_ANY
		invoke	bind,hSocket,addr @stSin,sizeof @stSin
		.if	eax ==	SOCKET_ERROR
			invoke	MessageBox,hWinMain,addr szErrBind,NULL,\
				MB_OK or MB_ICONWARNING
			invoke	SendMessage,hWinMain,WM_CLOSE,0,0
		.else
			invoke	listen,hSocket,5
		.endif
		ret

_Init		endp
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; 主窗口程序
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
_ProcDlgMain	proc	uses ebx edi esi hWnd,wMsg,wParam,lParam

		mov	eax,wMsg
		.if	eax ==	WM_SOCKET
			mov	eax,lParam
			.if	ax ==	FD_ACCEPT
				invoke	accept,wParam,0,0
				invoke	_AddClient,eax
			.elseif	ax ==	FD_READ
				invoke	_RecvData,wParam
			.elseif	ax ==	FD_CLOSE
				invoke	_RemoveClient,wParam
			.endif
;********************************************************************
; 退出時關閉全部連接
;********************************************************************
		.elseif	eax ==	WM_CLOSE
			invoke	closesocket,hSocket
			xor	ebx,ebx
			mov	esi,offset stTable
			cld
			.while	ebx <	MAX_SOCKET
				lodsd
				.if	eax
					invoke	closesocket,eax
				.endif
				inc	ebx
			.endw
			invoke	WSACleanup
			invoke	EndDialog,hWinMain,NULL
;********************************************************************
		.elseif	eax ==	WM_INITDIALOG
			push	hWnd
			pop	hWinMain
			call	_Init
;********************************************************************
		.else
			mov	eax,FALSE
			ret
		.endif
		mov	eax,TRUE
		ret

_ProcDlgMain	endp
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; 程序開始
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
start:
		invoke	GetModuleHandle,NULL
		invoke	DialogBoxParam,eax,DLG_MAIN,NULL,offset _ProcDlgMain,0
		invoke	ExitProcess,NULL
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
		end	start

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一区二区网站| 国产精品色哟哟网站| 在线观看网站黄不卡| 成人永久aaa| 久久精品国产在热久久| 美女视频第一区二区三区免费观看网站| 国产精品福利一区二区三区| 国产精品狼人久久影院观看方式| 欧美精品一区二区在线观看| 69堂成人精品免费视频| 91精品国产日韩91久久久久久| 欧美午夜影院一区| 欧美在线|欧美| 欧美日韩亚洲综合一区二区三区| 91国偷自产一区二区开放时间 | 国产不卡免费视频| 狠狠v欧美v日韩v亚洲ⅴ| 蜜臀久久99精品久久久画质超高清 | 337p日本欧洲亚洲大胆色噜噜| 欧美日产在线观看| 91精品国产美女浴室洗澡无遮挡| 91精品在线麻豆| 欧美一区二区三区免费视频| 精品久久久久一区二区国产| 日韩午夜激情免费电影| 91精品国产综合久久久久久 | 99综合电影在线视频| 成人激情黄色小说| 99视频有精品| 欧美性大战久久久久久久蜜臀| 欧美中文字幕不卡| 色天使久久综合网天天| 欧美日韩精品一区二区三区四区| 欧美日韩精品系列| 精品久久久久久综合日本欧美| 精品国产123| 国产网站一区二区三区| 亚洲三级理论片| 亚洲韩国精品一区| 日av在线不卡| 成人国产免费视频| 色综合久久综合中文综合网| 欧美一级精品大片| 国产欧美一区视频| 夜夜精品视频一区二区| 另类成人小视频在线| 国产不卡视频一区二区三区| 色综合天天综合网天天狠天天| av电影一区二区| 欧美三级日韩在线| 久久精品视频在线看| 成人欧美一区二区三区小说 | 亚洲制服丝袜av| 久久精品国产秦先生| 成人理论电影网| 欧美精品一二三四| 国产精品久久久久久久久久免费看 | 国产精品污www在线观看| 亚洲精品大片www| 黄网站免费久久| 色婷婷av一区二区三区之一色屋| 精品99999| 亚洲夂夂婷婷色拍ww47| 国产真实乱对白精彩久久| 欧洲中文字幕精品| 337p日本欧洲亚洲大胆精品| 亚洲综合区在线| 国内精品视频666| 91成人在线精品| 久久夜色精品国产欧美乱极品| 亚洲欧美日韩久久| 午夜精品爽啪视频| 成人免费视频caoporn| 色吊一区二区三区| 国产精品国产自产拍高清av王其| 亚洲午夜久久久久中文字幕久| gogo大胆日本视频一区| 日韩三级电影网址| 亚洲精品国产品国语在线app| 国产91在线观看丝袜| 欧美一区二区国产| 亚洲va欧美va国产va天堂影院| 国产成人午夜精品5599| 日韩女优制服丝袜电影| 一级中文字幕一区二区| 高清国产一区二区三区| 日韩女优av电影在线观看| 亚洲线精品一区二区三区八戒| 99久久综合精品| 亚洲精品一区二区三区在线观看| 中文字幕在线观看不卡视频| 韩国精品主播一区二区在线观看 | 亚洲一区免费观看| 成人一区二区三区| 国产亚洲综合在线| 蜜乳av一区二区三区| 九色综合国产一区二区三区| 91精品婷婷国产综合久久竹菊| 国产精品动漫网站| 91在线视频观看| 国产精品午夜在线观看| 久久99热狠狠色一区二区| 在线观看91精品国产麻豆| 一区二区激情视频| 欧美性大战久久| 亚洲欧美国产高清| 色哟哟日韩精品| 亚洲美女在线一区| av一区二区三区在线| 亚洲日本青草视频在线怡红院| 成人性生交大片免费看中文网站| 国产婷婷色一区二区三区在线| 国产一区二三区好的| 国产网站一区二区三区| 国产精品一区二区在线看| 久久青草欧美一区二区三区| 国产v日产∨综合v精品视频| 国产视频在线观看一区二区三区| 丁香激情综合国产| 国产精品视频一二三区| 国产成人午夜精品5599| 国产精品伦理一区二区| 99久久精品国产毛片| 亚洲美女一区二区三区| 91久久精品一区二区三| 亚洲成人一区二区在线观看| 欧美色区777第一页| 午夜精品久久久久久久99水蜜桃| 在线成人免费观看| 九九九久久久精品| 国产精品视频看| 99久久综合色| 亚洲视频一区二区免费在线观看 | 亚洲图片激情小说| 欧美日韩精品福利| 美腿丝袜亚洲色图| 精品少妇一区二区三区日产乱码| 精品一区二区综合| 国产亚洲精品福利| 色婷婷久久久综合中文字幕 | 欧美一区欧美二区| 国产在线一区二区综合免费视频| 久久久久久久电影| 欧美中文字幕一区二区三区| 人禽交欧美网站| 国产精品日韩精品欧美在线| 色琪琪一区二区三区亚洲区| 亚洲精品视频在线| 欧美不卡一区二区三区| 高清国产一区二区| 天天射综合影视| 久久久精品日韩欧美| 在线欧美小视频| 久久99精品一区二区三区| 久久亚洲春色中文字幕久久久| 色噜噜偷拍精品综合在线| 免费成人在线观看| 亚洲免费在线观看| 精品精品国产高清一毛片一天堂| 色综合久久综合网| 久久精品国产精品亚洲红杏| 国产嫩草影院久久久久| 欧美一区二区三区影视| 成人黄色软件下载| 精品一区二区三区蜜桃| 亚洲色图在线播放| xvideos.蜜桃一区二区| 91久久精品一区二区二区| 午夜欧美电影在线观看| 国产精品久久777777| 91精品国产91久久综合桃花| 色系网站成人免费| 国产一区二区三区香蕉 | 依依成人精品视频| 精品久久久影院| 色婷婷精品大视频在线蜜桃视频| 黄色成人免费在线| 日韩—二三区免费观看av| 国产精品久久久久一区| 精品国产一区二区三区久久久蜜月 | 蜜桃av噜噜一区二区三区小说| 亚洲免费av网站| 国产无人区一区二区三区| 日韩你懂的电影在线观看| 91美女片黄在线| av高清久久久| 国产精品99久久久久久久vr| 亚洲国产精品一区二区尤物区| 国产欧美一区二区在线| 精品国产露脸精彩对白| 欧美日韩精品一区视频| 成人一区二区三区中文字幕| 国产一区二区三区免费观看| 亚洲国产成人av网| 亚洲国产一区二区a毛片| 中文字幕亚洲在| 综合久久综合久久| 国产性做久久久久久| 久久久久久久电影| 精品精品国产高清一毛片一天堂|