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

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

?? statustoerror.asm

?? KmdKit 匯編下開發驅動的工具 由俄羅斯某強男開發
?? ASM
字號:
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;
;  Nt Status To Win32 Error - Let you convert STATUS_XXX to Win32 Error
;
;  Written by Four-F (four-f@mail.ru)
;
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

.386
.model flat, stdcall
option casemap:none

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;                                  I N C L U D E   F I L E S                                        
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

include \masm32\include\windows.inc

include \masm32\include\kernel32.inc
include \masm32\include\user32.inc
include \masm32\include\comctl32.inc
include \masm32\include\gdi32.inc
include \masm32\include\shell32.inc
include \masm32\include\w2k\ntdll.inc

include \masm32\include\w2k\ntstatus.inc

includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\user32.lib
includelib \masm32\lib\comctl32.lib
includelib \masm32\lib\gdi32.lib
includelib \masm32\lib\shell32.lib
includelib \masm32\lib\w2k\ntdll.lib

include \masm32\Macros\Strings.mac
include Macros.mac
include memory.asm
include theme.asm

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;                                        E Q U A T E S                                              
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

IDD_DIALOG				equ 1000

IDC_ERROR_DESCRIPTION	equ 1001
IDC_NT_STATUS			equ 1002
IDC_DOS_ERROR_ID		equ 1003
IDC_ALWAYS_ON_TOP		equ 1004

IDM_ABOUT				equ	2000

IDI_ICON				equ 3000

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;                              I N I T I A L I Z E D  D A T A                                       
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

.const
szAbout				db "About...", 0
szWrittenBy			db "Nt Status To Win32 Error v1.3", 0Ah, 0Dh
					db "Built on "
					date
					db 0Ah, 0Dh, 0Ah, 0Dh
					db "Written by Four-F <four-f@mail.ru>", 0

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;                              U N I N I T I A L I Z E D  D A T A                                   
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

.data?
g_hInstance					HINSTANCE	?
g_hwndSpin					HWND		?
g_hwndEditDosErrorId		HWND		?
g_hwndEditNtStatus			HWND		?
g_hwndEditErrorDescription	HWND		?
g_lpBuffer					LPDWORD		?
g_hDll						HANDLE		?

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;                                       C O D E                                                     
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

.code

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;                                             htodw                                                 
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

htodw proc uses esi pString:LPSTR

option PROLOGUE:none
option EPILOGUE:none

	push esi
	push edx

	mov esi, [esp + 0Ch]
	xor edx, edx

ALIGN 4

htodw_loop:     
	mov al, [esi] 
	inc esi
	sub   al, "0"
	js   htodw_endloop
	shl   edx, 4
	cmp   al, 9
	jbe   @F
	sub   al, "a" - "0" - 10
	jns   @F
	add al, 20h

@@:
	xor dl, al
	jmp htodw_loop

htodw_endloop:
	mov eax, edx

	pop edx
	pop esi

	ret sizeof DWORD

option PROLOGUE:PROLOGUEDEF
option EPILOGUE:EPILOGUEDEF

htodw endp

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;                                  MaskedEditProc                                                   
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

MaskedEditProc proc uses edi ebx hWnd:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM

	mov edi, $invoke(GetWindowLong, hWnd, GWL_USERDATA)
	mov ebx, [edi][256]

	; WM_NCDESTROY is the LAST message that a window will receive - 
	; therefore we must finally remove the old wndproc here
	.if uMsg == WM_NCDESTROY
		invoke free, edi

	.elseif uMsg == WM_CHAR

		invoke GetAsyncKeyState, VK_CONTROL		; allow clipboard works
		.if !( eax && 80000000h )
			mov eax, wParam
			and eax, 0FFh

			.if ( BYTE PTR [edi][eax] != TRUE) && !( eax == VK_BACK )
				xor eax, eax
				ret
			.endif
		.endif

	.endif

	invoke CallWindowProc, ebx, hWnd, uMsg, wParam, lParam
	ret

MaskedEditProc endp

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;                                   MaskEditControl                                                 
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

MaskEditControl proc uses esi edi ebx hwndEdit:HWND, pszMask:LPVOID, fOptions:BOOL

	; don't make a new mask if there is already one available
	mov ebx, $invoke(GetWindowLong, hwndEdit, GWL_WNDPROC)

	.if ebx != MaskedEditProc
		mov edi, $invoke(malloc, (256 + sizeof LPVOID))
	.else
		mov edi, $invoke(GetWindowLong, hwndEdit, GWL_USERDATA)
	.endif

	; build the mask lookup table. The method varies depending
	; on whether we want to allow or disallow the specified szMask characters
	mov esi, pszMask
	.if fOptions == TRUE
		invoke fZeroMemory, edi, 256
		xor ecx, ecx
		xor eax, eax
		.while BYTE PTR [esi][ecx] != 0
			mov al, [esi][ecx]
			mov BYTE PTR [edi][eax], TRUE
			inc ecx
		.endw
	.else
		invoke fFillMemory, edi, 256, TRUE
		xor ecx, ecx
		xor eax, eax
		.while BYTE PTR [esi][ecx] != 0
			mov al, [esi][ecx]
			mov BYTE PTR [edi][eax], FALSE
			inc ecx
		.endw	
	.endif

	; don't update the user data if it is already in place
	.if ebx != MaskedEditProc
		mov [edi][256], $invoke(SetWindowLong, hwndEdit, GWL_WNDPROC, addr MaskedEditProc)
		invoke SetWindowLong, hwndEdit, GWL_USERDATA, edi
	.endif

	ret

MaskEditControl endp

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;                                        DlgProc                                                    
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

DlgProc proc hDlg:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM

local dwNtStatus:DWORD
local dwErrorId:DWORD
local buffer[16]:CHAR

local lf:LOGFONT
local p:POINT

	mov eax, uMsg
	.if eax == WM_INITDIALOG

		; If we XP themed, remove WS_EX_STATICEDGE. Looks better.
		
		invoke AdjustGuiIfThemed, hDlg

		invoke GetDlgItem, hDlg, IDC_NT_STATUS
		mov g_hwndEditNtStatus, eax

		; Tnx James Brown
		invoke MaskEditControl, g_hwndEditNtStatus, $CTA0("0123456789abcdefABCDEF"), TRUE

		invoke SendMessage, g_hwndEditNtStatus, EM_SETLIMITTEXT, 8, 0

		; STATUS_INSUFFICIENT_RESOURCES
		invoke SendMessage, g_hwndEditNtStatus, WM_SETTEXT, 0, $CTA0("C000009A")

		invoke GetDlgItem, hDlg, IDC_DOS_ERROR_ID
		mov g_hwndEditDosErrorId, eax

;		invoke GetDlgItem, hDlg, IDC_ERROR_DESCRIPTION
;		mov g_hwndEditErrorDescription, eax
	     
		invoke CreateUpDownControl, WS_CHILD + WS_BORDER + WS_VISIBLE + UDS_ALIGNRIGHT, \
							0, 0, 0, 0, hDlg, 0, g_hInstance, g_hwndEditNtStatus, 1, 0, 0
		mov g_hwndSpin, eax

		invoke LoadIcon, g_hInstance, IDI_ICON
		invoke SendMessage, hDlg, WM_SETICON, ICON_BIG, eax

		; Add "About..." to sys menu
		invoke GetSystemMenu, hDlg, FALSE
		push eax
		invoke InsertMenu, eax, -1, MF_BYPOSITION + MF_SEPARATOR, 0, 0
		pop eax
		invoke InsertMenu, eax, -1, MF_BYPOSITION + MF_STRING, IDM_ABOUT, offset szAbout

	.elseif eax == WM_CLOSE
		invoke EndDialog, hDlg, 0

	.elseif eax == WM_NOTIFY
		mov eax, lParam
		mov ecx, (NMHDR ptr [eax]).hwndFrom
		.if ( ecx == g_hwndSpin ) && ( [NMHDR ptr [eax]].code == UDN_DELTAPOS )

			invoke SendMessage, g_hwndEditNtStatus, WM_GETTEXT, sizeof buffer, addr buffer
			invoke htodw, addr buffer
			mov ecx, lParam
			mov ecx, (NM_UPDOWN ptr [ecx]).iDelta
			.if ecx == 1
				inc eax
			.elseif ecx == -1
				dec eax
			.endif

			invoke wsprintf, addr buffer, $CTA0("%08X", szHexFmt), eax
			invoke SendMessage, g_hwndEditNtStatus, WM_SETTEXT, 0, addr buffer

		.endif

	.elseif eax == WM_COMMAND

		mov eax, $LOWORD(wParam)

		.if eax == IDCANCEL
			invoke EndDialog, hDlg, 0
		.elseif eax == IDC_ALWAYS_ON_TOP

			invoke IsDlgButtonChecked, hDlg, IDC_ALWAYS_ON_TOP

			.if eax==BST_CHECKED
				mov eax, HWND_TOPMOST
			.else
				mov eax, HWND_NOTOPMOST
			.endif
			invoke SetWindowPos, hDlg, eax, 0, 0, 0, 0, SWP_NOMOVE + SWP_NOSIZE
        
		.else
			mov eax, $HIWORD(wParam)

			.if eax == EN_CHANGE
				mov eax, lParam
				.if eax == g_hwndEditNtStatus

;					invoke SendMessage, g_hwndEditNtStatus, WM_GETTEXT, sizeof buffer, addr buffer
					invoke GetDlgItemText, hDlg, IDC_NT_STATUS, addr buffer, sizeof buffer

					invoke htodw, addr buffer
					mov dwNtStatus, eax

					invoke RtlNtStatusToDosError, dwNtStatus
					mov dwErrorId, eax

					invoke FormatMessage, FORMAT_MESSAGE_FROM_SYSTEM + FORMAT_MESSAGE_ALLOCATE_BUFFER, \
							NULL, dwErrorId, SUBLANG_DEFAULT SHL 10 + LANG_NEUTRAL, addr g_lpBuffer, 0, NULL

					.if eax != 0
						invoke LocalLock, g_lpBuffer
						invoke SetDlgItemText, hDlg, IDC_ERROR_DESCRIPTION, g_lpBuffer
;						invoke SendMessage, g_hwndEditErrorDescription, WM_SETTEXT, 0, g_lpBuffer
						invoke LocalFree, g_lpBuffer

						invoke wsprintf, addr buffer, addr szHexFmt, dwErrorId
;						invoke SendMessage, g_hwndEditDosErrorId, WM_SETTEXT, 0, addr buffer
						invoke SetDlgItemText, hDlg, IDC_DOS_ERROR_ID, addr buffer

					.else
						invoke SetDlgItemText, hDlg, IDC_DOS_ERROR_ID, $CTA0()
;						invoke SendMessage, g_hwndEditDosErrorId, WM_SETTEXT, 0, $CTA0()

						invoke SetDlgItemText, hDlg, IDC_ERROR_DESCRIPTION, $CTA0("Sorry. Error number not found.")
;						invoke SendMessage, g_hwndEditErrorDescription, WM_SETTEXT, 0, $CTA0("Sorry. Error number not found.")
					.endif

				.endif
			.endif
		.endif

	.elseif eax == WM_SYSCOMMAND
		.if wParam == IDM_ABOUT
			invoke MessageBox, hDlg, addr szWrittenBy, addr szAbout, MB_OK + MB_ICONINFORMATION
		.endif
		xor eax, eax
		ret

	.else
    
		xor eax, eax
		ret
      
	.endif
    
	xor eax, eax
	inc eax
	ret
    
DlgProc endp

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;                                         start                                                     
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

start proc

	invoke GetModuleHandle, NULL
	mov    g_hInstance, eax

	invoke DialogBoxParam, g_hInstance, IDD_DIALOG, NULL, addr DlgProc, NULL

	invoke ExitProcess, 0
    invoke InitCommonControls

start endp

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;                                                                                                   
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

end start

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品亲子乱子伦xxxx裸| 国产成人日日夜夜| 玉足女爽爽91| 自拍偷在线精品自拍偷无码专区| 久久九九99视频| 精品福利一二区| 亚洲精品一区二区三区精华液 | 欧美性色综合网| 色综合天天天天做夜夜夜夜做| 成人性色生活片| 成人av网址在线观看| www.av精品| 色婷婷激情一区二区三区| 欧美在线一区二区三区| 欧美日韩亚洲综合| 日韩欧美色电影| 久久丝袜美腿综合| 国产精品久久久久久户外露出| 自拍偷拍欧美精品| 亚洲高清免费在线| 美女尤物国产一区| 国产精品99久久不卡二区| 成人毛片在线观看| 欧美亚洲综合久久| 日韩欧美一区二区三区在线| 久久久精品影视| 国产精品久久久久久久久搜平片| 亚洲色大成网站www久久九九| 一区二区三区四区国产精品| 亚洲国产精品久久久久秋霞影院| 天堂成人国产精品一区| 国产伦精品一区二区三区在线观看| 成人黄页毛片网站| 欧美视频三区在线播放| 欧美精品一区二| 亚洲欧美激情插| 蜜臀av性久久久久蜜臀aⅴ四虎| 国产综合色在线| 99精品欧美一区二区三区小说| 欧美三日本三级三级在线播放| 精品国精品国产尤物美女| 中文字幕av不卡| 亚洲福利国产精品| 国产一区二区三区日韩| 日本黄色一区二区| 精品国产电影一区二区| 国产精品成人免费| 日韩av在线发布| 国产·精品毛片| 欧美日韩在线三级| 欧美激情中文字幕一区二区| 亚洲一区二区三区在线播放| 精品一区二区三区不卡| 色婷婷精品久久二区二区蜜臂av| 欧美mv日韩mv国产| 一区二区在线看| 国产激情视频一区二区在线观看 | 欧美影视一区二区三区| 精品毛片乱码1区2区3区| 亚洲啪啪综合av一区二区三区| 久久99国产精品麻豆| 色屁屁一区二区| 久久久不卡网国产精品一区| 亚洲成人精品一区二区| 东方欧美亚洲色图在线| 日韩视频国产视频| 亚洲男同1069视频| 国产宾馆实践打屁股91| 91精品免费观看| 亚洲欧美一区二区视频| 久久精品免费观看| 在线观看亚洲成人| 国产精品女主播在线观看| 麻豆视频观看网址久久| 欧美在线一区二区三区| 国产精品乱子久久久久| 午夜av一区二区| 91同城在线观看| 欧美激情综合网| 国产美女av一区二区三区| 7777精品久久久大香线蕉| 国产精品国产三级国产有无不卡| 美女精品自拍一二三四| 欧美美女直播网站| 亚洲精品国产高清久久伦理二区 | 2欧美一区二区三区在线观看视频| 一区二区三区中文在线| 波多野结衣视频一区| 国产三级精品在线| 国产一区二区三区综合| 日韩免费高清视频| 午夜av一区二区| 欧美色精品天天在线观看视频| 亚洲美女偷拍久久| 色综合久久99| 亚洲欧美激情小说另类| 99在线精品观看| 亚洲欧洲日韩综合一区二区| 岛国精品一区二区| 久久精品夜色噜噜亚洲aⅴ| 激情综合五月天| 久久综合久久久久88| 国产剧情av麻豆香蕉精品| 精品国精品国产尤物美女| 精品一区二区在线播放| 欧美成人福利视频| 国内精品伊人久久久久影院对白| 日韩免费在线观看| 激情欧美一区二区三区在线观看| 精品免费视频.| 国产精一区二区三区| 国产亲近乱来精品视频| 国产成人av在线影院| 中文字幕国产一区二区| www.亚洲国产| 自拍偷拍欧美激情| 日韩一级片在线观看| 视频一区二区三区中文字幕| 日韩一级高清毛片| 国产精品综合视频| 亚洲欧洲日韩一区二区三区| 色哟哟国产精品| 亚洲成人av一区二区| 欧美一区三区二区| 激情五月播播久久久精品| 欧美激情综合网| 色老综合老女人久久久| 婷婷综合在线观看| 精品久久人人做人人爱| 成人小视频免费观看| 亚洲一区二区三区在线看| 欧美一区二区精美| 韩国欧美一区二区| 一区在线观看免费| 欧美日韩高清在线| 精品中文字幕一区二区小辣椒 | 精品精品国产高清一毛片一天堂| 国产麻豆91精品| 亚洲人成精品久久久久| 91麻豆精品国产自产在线观看一区 | 国产欧美精品国产国产专区 | 在线看不卡av| 麻豆国产91在线播放| 久久精品视频免费| 91网站在线观看视频| 日韩成人午夜电影| 国产亚洲欧美日韩在线一区| 99久久精品久久久久久清纯| 日韩电影在线看| 中文字幕av一区二区三区| 欧美高清性hdvideosex| 国产剧情一区二区三区| 亚洲成人精品一区二区| 亚洲国产精品高清| 欧美久久一区二区| 成人黄动漫网站免费app| 伊人色综合久久天天| 久久影院视频免费| 欧洲一区二区三区在线| 韩国av一区二区三区四区| 伊人性伊人情综合网| 26uuuu精品一区二区| 欧美色窝79yyyycom| 国产成人在线观看| 香蕉成人伊视频在线观看| 久久免费偷拍视频| 欧美日韩另类一区| 成人夜色视频网站在线观看| 日韩高清不卡一区二区三区| 国产精品国产三级国产普通话蜜臀| 欧美巨大另类极品videosbest | 日韩高清不卡一区二区| 1区2区3区精品视频| 欧美成人伊人久久综合网| 色婷婷综合五月| 国产高清不卡一区| 日产精品久久久久久久性色| 亚洲视频中文字幕| 久久精品一区八戒影视| 欧美一区二区在线观看| 色婷婷综合久久久久中文| 国产精品系列在线观看| 热久久一区二区| 亚洲激情图片小说视频| 欧美高清一级片在线观看| 精品99一区二区三区| 91麻豆精品国产综合久久久久久| 在线观看视频欧美| 91在线视频免费观看| 国产jizzjizz一区二区| 韩国欧美国产1区| 久久精品国产99国产| 日本欧美久久久久免费播放网| 亚洲综合图片区| 久久99精品国产麻豆不卡| 亚洲成年人影院| 亚洲丰满少妇videoshd| 亚洲最色的网站| 中文字幕综合网| 一区免费观看视频|