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

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

?? tabmain.asm

?? 駕駛員考試系統,匯編編寫,qq332779423
?? ASM
字號:
include	tabmain.inc
include	kFormatDateTime.asm
include	Random.asm
include	playmidi.asm
include	hook.asm
.code
if		DEBUG
include		\masm32\debug\Debug.asm
endif
include	JmOdbc.asm

Tab1Proc proc hWnd:HWND,uMsg:UINT,wParam:WPARAM,lParam:LPARAM

	.if uMsg==WM_INITDIALOG
		push	hWnd
		pop		hTab1
		invoke	SetTimer,hTab1,ID_TIMER1,1000,NULL  ;設置timer
		invoke	SetWindowsHookEx,WH_JOURNALRECORD,addr HookProc,hInstance,NULL
		mov	hHook,eax
	.ELSEIF uMsg ==  WM_TIMER
		.IF		wParam==ID_TIMER1
			invoke	kFormatDateTime,addr szBuf,addr szTimeFormat,NULL
			invoke	SetDlgItemText,hTab1,IDC_LTEXT_Time,addr szBuf
		.endif	
	.ELSEIF uMsg ==  WM_HOOK
		mov	eax,wParam
			.if		al == "A"	||	al=="a"	|| al=="1"	|| al=="!"
			.elseif	al == "B"	||	al=="b"	|| al=="2"	|| al=="@"
			.elseif	al == "C"	||	al=="c"	|| al=="3"	|| al=="#"
			.endif
	.ELSEIF uMsg ==  WM_CLOSE
		invoke	UnhookWindowsHookEx,hHook
		invoke	KillTimer, hTab1, ID_TIMER1
	.else
		mov		eax,FALSE
		ret
	.endif
	mov		eax,TRUE
	ret

Tab1Proc endp

Tab2Proc proc hWnd:HWND,uMsg:UINT,wParam:WPARAM,lParam:LPARAM
	LOCAL	@CurRecPosInCur:DWORD
	.if uMsg==WM_INITDIALOG
		push	hWnd
		pop		hTab2
		mov bSave,FALSE
		invoke	GetDlgItem,hTab2,IDC_FIRST
		mov		hFirst,eax
		invoke	GetDlgItem,hTab2,IDC_NEXT
		mov		hNext,eax
		invoke	GetDlgItem,hTab2,IDC_PRE
		mov		hPre,eax
		invoke	GetDlgItem,hTab2,IDC_LAST
		mov		hLast,eax
		invoke	GetDlgItem,hTab2,IDC_APPEND
		mov		hAppend,eax
		invoke	GetDlgItem,hTab2,IDC_MODIFY
		mov		hModify,eax
		invoke	GetDlgItem,hTab2,IDC_DELETE
		mov		hDelete,eax
		invoke	GetDlgItem,hTab2,IDC_EXIT
		mov		hExit,eax
		invoke	GetDlgItem,hTab2,IDC_EDITTEXT_TiGan
		mov		hTiGan,eax
		invoke	GetDlgItem,hTab2,IDC_EDITTEXT_DaAnA
		mov		hDaAnA,eax
		invoke	GetDlgItem,hTab2,IDC_EDITTEXT_DaAnB
		mov		hDaAnB,eax
		invoke	GetDlgItem,hTab2,IDC_EDITTEXT_DaAnC
		mov		hDaAnC,eax
		invoke	GetDlgItem,hTab2,IDC_COMBOBOX_ZhQuD
		mov		hZhQuDaAn,eax
		invoke	SendMessage,hZhQuDaAn,CB_ADDSTRING,0,addr szChioseA
		invoke	SendMessage,hZhQuDaAn,CB_ADDSTRING,0,addr szChioseB
		invoke	SendMessage,hZhQuDaAn,CB_ADDSTRING,0,addr szChioseC
		invoke	SendMessage,hZhQuDaAn,CB_SETCURSEL,0,0
;****************************************************
		invoke	CreateStatementHandle;通用語句句柄、追加、修改、刪除和自定義句柄屬性的設置
		invoke SQLSetCursorName,hStmt,addr Cursor,sizeof Cursor
		invoke OpenRecordset,hTab2
		.if  !eax
			invoke MessageBox,hTab2,addr szErr_OpenRec,addr szNull,MB_OK
		.endif
		invoke BindColVariable,hStmt
		invoke SQLFetchScroll,hStmt,SQL_FETCH_FIRST,0
		mov retcode,ax
		.if  retcode!=SQL_ERROR
			.if  retcode!=SQL_NO_DATA
				.while  (retcode!=SQL_ERROR && retcode!=SQL_NO_DATA)
					invoke SQLFetchScroll,hStmt,SQL_FETCH_NEXT,0
					mov retcode,ax
				.endw
				mov CurRecPosInCur ,1
				invoke SQLFetchScroll,hStmt,SQL_FETCH_FIRST,0
				invoke DisplayRecordAtControl,hTab2,CurRecPosInCur
				invoke EnableWindow,hPre,FALSE
			.else
            	invoke MessageBox,hTab2,addr EmptyRec,addr TitleName,MB_OK
	           	invoke ButtEnable,FALSE
			.ENDIF
		.ENDIF
	.ELSEIF uMsg ==  WM_COMMAND
		mov		eax,wParam
		mov edx,eax
		shr edx,16
		.if  lParam
			.if  dx==BN_CLICKED
				.if  		ax==IDC_FIRST
					mov CurRecPosInCur ,1
					invoke SQLFetchScroll,hStmt,SQL_FETCH_FIRST,0
					invoke DisplayRecordAtControl,hTab2,CurRecPosInCur 
					invoke EnableWindow,hPre,FALSE
					invoke EnableWindow,hNext,TRUE
				.elseif		ax==IDC_NEXT
					xor eax,eax
					push esi
					lea esi,RowStatusArray
					mov al,2
					mul CurRecPosInCur
					add esi,eax
					.if  (word ptr [esi]==SQL_ROW_SUCCESS||word ptr [esi]==SQL_ROW_ADDED||word ptr [esi]==SQL_ROW_UPDATED)              
						inc CurRecPosInCur
						invoke DisplayRecordAtControl,hTab2,CurRecPosInCur
					.else
						invoke EnableWindow,hNext,FALSE
					.endif
               		pop esi
					invoke EnableWindow,hPre,TRUE
				.elseif		ax==IDC_PRE
					dec CurRecPosInCur
					.if  CurRecPosInCur<1
						invoke EnableWindow,hPre,FALSE
						mov CurRecPosInCur,1
					.else
						invoke DisplayRecordAtControl,hTab2,CurRecPosInCur
					.endif
					invoke EnableWindow,hNext,TRUE
				.elseif		ax==IDC_LAST
					mov CurRecPosInCur,0  
					invoke SQLFetchScroll,hStmt,SQL_FETCH_LAST,0 
					push esi
					lea esi,RowStatusArray
					.while  word ptr [esi]!=SQL_ROW_NOROW
						inc CurRecPosInCur
						add esi,2
						.break .if  CurRecPosInCur>=ROWS           
					.endw
					pop esi
					invoke DisplayRecordAtControl,hTab2,CurRecPosInCur 
					invoke EnableWindow,hNext,FALSE
					invoke EnableWindow,hPre,TRUE
				.elseif  ax==IDC_APPEND
					.if  !bSave
						invoke SetWindowText,hAppend,addr Save
						mov bSave,TRUE
						invoke  ButtEnable,FALSE
						invoke  EnableWindow,hExit,FALSE
						invoke  SetWindowText,hTiGan,szNull
						invoke  SetWindowText,hDaAnA,szNull
						invoke  SetWindowText,hDaAnB,szNull
						invoke  SetWindowText,hDaAnC,szNull
						;invoke  SetDlgItemInt,hTab2,IDC_EDITTEXT_TiGan,0,0
					.else                
						invoke SQLPrepare,hAppendStmt,addr SQLAppStmt,sizeof SQLAppStmt
						invoke BindParamVariable,hAppendStmt
						invoke GetParam,hTab2
						invoke SQLExecute,hAppendStmt
						mov bSave,FALSE 
						invoke SetWindowText,hAppend,addr szAppend
						invoke ButtEnable, TRUE
						invoke EnableWindow,hExit,TRUE
						invoke RefreshList,hTab2
						invoke SendMessage,hTab2,WM_COMMAND,IDC_LAST,BM_CLICK
					.endif 
				.elseif  ax==IDC_MODIFY
					invoke SQLSetPos,hStmt,CurRecPosInCur,SQL_POSITION,SQL_LOCK_NO_CHANGE
					invoke SQLPrepare,hCustStmt,addr SQLModStmt,sizeof SQLModStmt
					invoke BindParamVariable ,hCustStmt
					invoke GetParam,hTab2
					invoke SQLExecute,hCustStmt
					.if !(ax==SQL_SUCCESS || ax==SQL_SUCCESS_WITH_INFO)
						invoke MessageBox,hTab2,addr ModError,addr TitleName,MB_OK
						invoke SQLFreeHandle, SQL_HANDLE_ENV, hStmt
					.endif
					invoke RefreshList,hTab2
				.elseif  ax==IDC_DELETE
					invoke SQLSetPos,hStmt,CurRecPosInCur,SQL_POSITION,SQL_LOCK_NO_CHANGE
					invoke SQLPrepare,hCustStmt,addr SQLDelStmt,sizeof SQLDelStmt
					invoke SQLExecute,hCustStmt
					.if !(ax==SQL_SUCCESS || ax==SQL_SUCCESS_WITH_INFO)
						invoke MessageBox,hTab2,addr DelError,addr TitleName,MB_OK
						invoke SQLFreeHandle, SQL_HANDLE_ENV, hStmt
					.endif
					invoke RefreshList,hTab2
					.if  ax==SQL_NO_DATA
						invoke ButtEnable,FALSE 
						invoke  SetWindowText,hTiGan,szNull
						invoke  SetWindowText,hDaAnA,szNull
						invoke  SetWindowText,hDaAnB,szNull
						invoke  SetWindowText,hDaAnC,szNull
					.else
						dec  CurRecPosInCur    
						.if  !CurRecPosInCur
							mov CurRecPosInCur,1
						.endif
						invoke DisplayRecordAtControl,hTab2,CurRecPosInCur 
					.endif

				.elseif		ax==IDC_EXIT
					invoke	SendMessage,hAll,WM_CLOSE,NULL,NULL
				.endif
			.endif
		.endif
	.else
		mov		eax,FALSE
		ret
	.endif
	mov		eax,TRUE
	ret

Tab2Proc endp

Tab3Proc proc hWnd:HWND,uMsg:UINT,wParam:WPARAM,lParam:LPARAM

	.if uMsg==WM_INITDIALOG
	.else
		mov		eax,FALSE
		ret
	.endif
	mov		eax,TRUE
	ret

Tab3Proc endp

Tab4Proc proc hWnd:HWND,uMsg:UINT,wParam:WPARAM,lParam:LPARAM

	.if uMsg==WM_INITDIALOG
		invoke CreateWindowEx,0,CTXT("AniGIF"),0,WS_VISIBLE or WS_CHILD or WAGS_AUTOSIZE,10,20,10,10,hWnd,2000,hInstance,0
		invoke SendDlgItemMessage,hWnd,2000,WAGM_LOADGIFFROMFILE,0,CTXT(".\test.gif")
		invoke GetSysColor,COLOR_BTNFACE
		invoke SendDlgItemMessage,hWnd,2000,WAGM_SETBKCOLOR,0,eax
	.else
		mov		eax,FALSE
		ret
	.endif
	mov		eax,TRUE
	ret

Tab4Proc endp

DlgMainProc proc hWnd:HWND,uMsg:UINT,wParam:WPARAM,lParam:LPARAM
	LOCAL	ts:TC_ITEM

	mov		eax,uMsg
	.if eax==WM_INITDIALOG
		push	hWnd
		pop		hAll
		invoke GetDlgItem,hAll,IDC_OK
		mov hExit,eax
		;Create the tabs
		invoke GetDlgItem,hAll,IDC_TAB1
		mov		hTab,eax
		mov		ts.imask,TCIF_TEXT
		mov		ts.lpReserved1,0
		mov		ts.lpReserved2,0
		mov		ts.iImage,-1
		mov		ts.lParam,0
		mov		ts.pszText,offset TabTitle1
		mov		ts.cchTextMax,sizeof TabTitle1
		invoke SendMessage,hTab,TCM_INSERTITEM,0,addr ts
		mov		ts.pszText,offset TabTitle2
		mov		ts.cchTextMax,sizeof TabTitle2
		invoke SendMessage,hTab,TCM_INSERTITEM,1,addr ts
		mov		ts.pszText,offset TabTitle3
		mov		ts.cchTextMax,sizeof TabTitle3
		invoke SendMessage,hTab,TCM_INSERTITEM,2,addr ts
		mov		ts.pszText,offset TabTitle4
		mov		ts.cchTextMax,sizeof TabTitle4
		invoke SendMessage,hTab,TCM_INSERTITEM,3,addr ts
		;Create the tab dialogs
		invoke CreateDialogParam,hInstance,IDD_TAB1,hTab,addr Tab1Proc,0
		mov hTabDlg,eax
		invoke CreateDialogParam,hInstance,IDD_TAB2,hTab,addr Tab2Proc,0
		mov hTabDlg[4],eax
		invoke CreateDialogParam,hInstance,IDD_TAB3,hTab,addr Tab3Proc,0
		mov hTabDlg[8],eax
		invoke CreateDialogParam,hInstance,IDD_TAB4,hTab,addr Tab4Proc,0
		mov hTabDlg[12],eax
		
;*以后在此設置操作級別
	
	.elseif eax==WM_COMMAND
		mov		eax,wParam
		mov		edx,eax
		and		eax,0FFFFh
		shr		edx,16
		.if edx==BN_CLICKED
			.if eax==IDC_OK		;點擊確定按鈕
				invoke SendMessage,hAll,WM_CLOSE,0,0
			.elseif eax==IDC_CANCEL		;點擊取消按鈕
				invoke SendMessage,hAll,WM_CLOSE,0,0
			.endif
		.endif
	.elseif eax==WM_NOTIFY
		mov		eax,lParam
		mov		eax,[eax].NMHDR.code
		.if eax==TCN_SELCHANGE
			;Tab selection
			invoke SendMessage,hTab,TCM_GETCURSEL,NULL,NULL
			.if eax!=SelTab
				push	eax
				mov		eax,SelTab
				invoke ShowWindow,[hTabDlg+eax*4],SW_HIDE
				pop		eax
				mov		SelTab,eax
				invoke ShowWindow,[hTabDlg+eax*4],SW_SHOWDEFAULT
			.endif
		.endif
	.elseif eax==WM_CLOSE
		invoke	EndDialog,hAll,NULL
		invoke	SendMessage,hLOGIN_DIALOG,WM_CLOSE,NULL,NULL
	.else
		mov		eax,FALSE
		ret
	.endif
	mov		eax,TRUE
	ret

DlgMainProc endp

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区不卡在线播放| 综合自拍亚洲综合图不卡区| 久久久久久电影| 一区二区三区国产豹纹内裤在线 | 激情久久五月天| 日本欧美一区二区三区| 国产精品黄色在线观看| 国产乱码精品一区二区三区五月婷 | 亚洲综合一二区| 国产91丝袜在线观看| 欧美日韩国产成人在线免费| 国产精品久久久久久久久免费桃花| 香港成人在线视频| 一本到三区不卡视频| 国产片一区二区| 黄色成人免费在线| 日韩欧美国产1| 首页综合国产亚洲丝袜| 欧美视频第二页| 一区二区三区四区精品在线视频| 国产成人精品一区二区三区网站观看| 欧美一区二区福利在线| 亚洲成人福利片| 99riav一区二区三区| 欧美曰成人黄网| 日韩午夜三级在线| 日韩福利电影在线| 欧美亚洲动漫精品| 亚洲自拍偷拍图区| 欧美年轻男男videosbes| 亚洲成人高清在线| 欧美电影在线免费观看| 五月天欧美精品| 91精品在线免费| 久久精品国产久精国产| 日韩免费观看高清完整版| 日韩电影免费在线| 日韩一区二区三区观看| 蜜桃av一区二区| 欧美精品一区二区在线观看| 国产一二三精品| 国产精品视频一二三区| 成人sese在线| 亚洲在线成人精品| 欧美一级黄色片| 亚洲少妇最新在线视频| 日韩精品一区二区三区蜜臀 | 国产美女视频91| 久久久久久久电影| 不卡的av中国片| 亚洲激情网站免费观看| 欧美日韩亚洲丝袜制服| 蜜臀久久99精品久久久久宅男| 精品久久久久久亚洲综合网| 国产在线精品免费| 成人欧美一区二区三区黑人麻豆| 色婷婷av一区二区三区gif| 亚洲高清免费一级二级三级| 欧美一区二区三区视频免费播放| 久久精品二区亚洲w码| 日本一区二区成人在线| 色网站国产精品| 美女脱光内衣内裤视频久久影院| 2020国产精品久久精品美国| 成人av集中营| 成人国产电影网| 精品视频一区二区不卡| 久久精品免费在线观看| 91在线精品一区二区三区| 亚洲va国产va欧美va观看| 久久综合一区二区| 91日韩一区二区三区| 蜜臀av一区二区在线观看| 国产亚洲欧洲997久久综合| 色一情一乱一乱一91av| 久久av中文字幕片| 亚洲麻豆国产自偷在线| 日韩欧美国产1| 色偷偷久久人人79超碰人人澡| 狠狠v欧美v日韩v亚洲ⅴ| 一区二区三区高清| 久久色视频免费观看| 欧美日韩一区国产| 99久久er热在这里只有精品66| 午夜精品久久久久久久久| 精品国内二区三区| 欧美撒尿777hd撒尿| 东方欧美亚洲色图在线| 亚洲国产经典视频| 亚洲国产成人一区二区三区| 欧美aaaaa成人免费观看视频| 国产精品三级av| 精品国产一区二区在线观看| 欧美日韩一区小说| 91丝袜呻吟高潮美腿白嫩在线观看| 久久精品99国产精品日本| 亚洲男帅同性gay1069| 久久在线观看免费| 日韩欧美综合一区| 欧美日韩视频专区在线播放| 99精品视频在线观看免费| 国产精品综合久久| 精品一区二区日韩| 免费高清视频精品| 美女精品一区二区| 婷婷丁香激情综合| 日韩综合小视频| 日韩中文字幕麻豆| 午夜电影一区二区三区| 亚洲综合网站在线观看| 亚洲人精品一区| 国产精品乱子久久久久| 国产欧美日韩麻豆91| 国产精品影视在线观看| 欧美一区二区三区视频在线 | 欧美日韩中文字幕一区| 一本在线高清不卡dvd| av成人动漫在线观看| 99精品视频中文字幕| 91亚洲国产成人精品一区二三| 不卡一二三区首页| 91亚洲永久精品| 色老汉av一区二区三区| 在线免费观看日本欧美| 欧美日韩国产综合一区二区三区| 欧美三级电影网| 日韩三级中文字幕| 国产欧美日韩在线看| 国产精品国产a级| 亚洲一区二区视频| 奇米影视在线99精品| 国产一区二区免费视频| 成人免费黄色在线| 91视频精品在这里| 在线成人小视频| 日韩免费在线观看| 亚洲国产精品传媒在线观看| 成人性生交大片免费看在线播放| 亚洲一区二区视频在线| 日韩高清欧美激情| 精彩视频一区二区三区| 丁香啪啪综合成人亚洲小说| 91丨porny丨在线| 日韩一区二区精品葵司在线| 国产午夜精品一区二区| 亚洲精品中文在线观看| 亚洲国产精品久久久久秋霞影院| 老司机免费视频一区二区三区| 国产成人午夜视频| 欧美美女直播网站| 久久九九国产精品| 午夜一区二区三区在线观看| 国产精品中文字幕日韩精品| 色久综合一二码| 久久人人97超碰com| 一级日本不卡的影视| 国产乱国产乱300精品| 欧美性淫爽ww久久久久无| 精品国产免费一区二区三区香蕉| 久久青草国产手机看片福利盒子 | 亚洲国产视频直播| 在线综合视频播放| 亚洲精品免费看| 欧美一区二区三级| 亚洲色图.com| 韩日精品视频一区| 欧美日韩国产精品成人| 日本一区二区三区免费乱视频 | 欧美日韩一区成人| 中文字幕欧美国产| 久久99精品久久久久久动态图| 99精品1区2区| 久久嫩草精品久久久精品| 日韩精品一卡二卡三卡四卡无卡| 成人激情图片网| 精品福利av导航| 日本欧美在线看| 欧美日韩二区三区| 一区二区理论电影在线观看| 国产aⅴ综合色| 国产亚洲一区字幕| 免费看欧美女人艹b| 欧美老人xxxx18| 夜色激情一区二区| 色av成人天堂桃色av| 中文字幕欧美国产| 亚洲人吸女人奶水| 日韩色在线观看| 91麻豆免费看片| 欧美日韩国产大片| 亚洲一区二区三区精品在线| 97精品国产露脸对白| 国产欧美日韩不卡| 豆国产96在线|亚洲| 国产午夜精品久久久久久久 | 91麻豆精品国产自产在线 | 精品999在线播放| 国产做a爰片久久毛片| 欧美成人性福生活免费看| 日本在线不卡视频|