自制的 win32asm 下的 DbgPrint

王朝system·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

工作一直没有着落,手上的事情却都搁置不顾。心态每况愈下,无一丝慰籍。

无聊之余,想到以后写程序时或许会用到些代码。现在想出一点,打发时间。

用 YONSM 的 DEBUGTRACE 时 甚感舒服,可惜ABOUT上只有C的调用代码,于是写段 WIN32ASM 的代码,以后改进。

code:

01 .386

02 .model flat, stdcall

03 option casemap :none

04 ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

05 ; Include 文件定义

06 ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

07 include \masm32\include\windows.inc

08 include \masm32\include\kernel32.inc

09 include \masm32\include\user32.inc

10 include \masm32\include\masm32.inc

11

12 includelib \masm32\lib\kernel32.lib

13 includelib \masm32\lib\user32.lib

14 includelib \masm32\lib\masm32.lib

15 include \masm32\macros\macros.asm

16 include \masm32\macros\strings.mac

17 ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

18 ; Equ 等值定义

19 ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

20 EbNetBuffer_s struct

21

22 next dd ?

23 char dd ?

24 buffer dd ?

25 alength dd ?

26

27 EbNetBuffer_s ends

28

29 .data?

30 EbNetBuffer EbNetBuffer_s <?>

31 hInstance dd ?

32 szbuffer db 1024 dup (?)

33

34 .code

35 DbgPrint proc uses ebx edi esi debugcommon:dword,debugvalue:dword

36 local @buffer[256]:BYTE

37 local @addr[64]:BYTE

38

39 mov eax, ebp

40 add eax, 4h

41 mov eax, [eax]

42 sub eax, 5h

43 invoke wsprintf, addr @addr, $CTA0("addr:00%lXh || "), eax

44 invoke wsprintf, addr @buffer, debugcommon, debugvalue

45 invoke lstrcat, addr @addr, addr @buffer

46 invoke OutputDebugString, addr @addr

47 ret

48 DbgPrint endp

49

50 start:

51 invoke GetModuleHandle,NULL

52 mov hInstance,eax

53 invoke RtlZeroMemory, addr EbNetBuffer, sizeof EbNetBuffer

54 mov [EbNetBuffer.next],31323334h

55 mov [EbNetBuffer.char], 'abcd'

56 invoke DbgPrint, $CTA0("values is :%s"), addr EbNetBuffer

57 invoke ExitProcess,NULL

58 ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

59 end start

60

DbgPrint ,为了和 DebugPrint 有所区分,起了这个名字。相信以后会有用的,呵呵……

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航