Visual Studio: відображення типів користувача в дебагері

Щоб дебагер студії міг красиво показати значення об’єктів типу треба додати його опис/форматування в файл AUTOEXP.DAT.

 

Формат наступний: 

type=[text]<member[,format]>…

Field

Description

type

Type name. For  template can be followed by <*> to encompass all derived types.

text

Any

member

Data member or expression.

format

See Formatting Symbols for Watch Window

e.g. _PROC_INFO=hProc=<hProc,X> hThread=<hThread,X>

 

Тобто символи <> треба вводити.

Visual Studio: Watch Window Pseudo registers

Watch Window Pseudo registers

Pseudo register

Description

@ERR

Last error value (GetLastError result)

@TIB

Thread information block for current thread

@CLK

Clock register

Trick: enter @CLK and @CLK=0.the second zeroes out the timer after continuing debugging.

@EAX, @EBX, @ECX, @EDX, @ESI, @EDI, @EIP, @ESP, @EBP, @EFL

CPU registers

@CS, @DS, @ES, @SS, @FS, @GS

CPU segment registers

@ST0, @ST1, @ST2, @ST3, @ST4, @ST5, @ST6, @ST7

CPU floating-point registers

Visual Studio: Formatting Symbols for Watch Window Memory Dump

Formatting Symbols for Watch Window Memory Dump

Stmbol

Description

ma

64 ASCII characters

m, mb

16 bytes in hex followed by 16 ASCII chars

mw

8 words

md

4 dwords

Mq

4 qwords

mu

2-byte characters (Unicode)

#

Expands a pointer to the specified number of values

Visual Studio: форматуючі символи для вікна Watch

Formatting Symbols for Watch Window

Symbol

Description

Sample

Displays

d, i

Signed decimal int

(int)0xF000F064,d

-268373915

u

Unsigned decimal int

0x0065,u

101

o

Unsigned octal decimal

0xF065,o

0170145

x, X

Hexidecimal integer

61541,x

0x0000F065

l, h

Long or short prefix for d, I, u, o, x, X

0x0042406042,hx

0x0c22

f

Signed float

3./2,f

1.500000

e

Signed float, scientific notation

3./2,e

1.500000e+00

g

Signed float or signed scientific, which one is shorter

3./2,g

1.5

c

char

0x0065,c

‘e’

s

string

szHiWorlds,z

“Hello world”

su

Unicode string

szWHiWorlds,su

“Hello world”

st

Unicode or ANSI string, dependint on settings in autoext.dat

   

hr

HRESULT or Win32 error code

0,hr

S_OK

wc

Window class flag

0x0040,wc

WC_DEFAULTCHAR

wm

Windows message

0x0010,wm

WM_CLOSE