1. <ul id="thFHg"></ul>

        ÄúµÄλÖ㺷ɶÈÏÂÔØÕ¾ÏÂÔØ ¡ú ±à³Ì¿ª·¢ ¡ú ±à³Ì¹¤¾ß ¡ú windbgÏÂÔØ v6.12 ¹Ù·½×îаæ

        windbgÏÂÔØ v6.12 ¹Ù·½×îаæwindbgÏÂÔØ v6.12 ¹Ù·½×îаæ

        Èí¼þ´óС£º34.5M

        Èí¼þ¹ÙÍø£ºHomePage

        Óû§ÆÀ·Ö£º

        Èí¼þÀàÐÍ£º¹ú²úÈí¼þ

        ÔËÐл·¾³£ºWin All

        Èí¼þÓïÑÔ£º¼òÌåÖÐÎÄ

        Èí¼þ·ÖÀࣺ±à³Ì¹¤¾ß

        ¸üÐÂʱ¼ä£º2021/04/14

        ÊÚȨ·½Ê½£ºÃâ·ÑÈí¼þ

        ²å¼þÇé¿ö£ºÎÞ ²å ¼þ

        ƽ̨¼ì²â ÎÞ²å¼þ 360ͨ¹ý ÌÚѶͨ¹ý ½ðɽͨ¹ý ÈðÐÇͨ¹ý
        ±à³Ì¹¤¾ß
        windbgÊÇ΢Èí·¢²¼µÄÒ»¿îÏ൱ÓÅÐãµÄÔ´Âë¼¶(source-level)µ÷ÊÔ¹¤¾ß£¬¿ÉÒÔÓÃÓÚKernelģʽµ÷ÊÔºÍÓû§Ä£Ê½µ÷ÊÔ£¬»¹¿ÉÒÔµ÷ÊÔDumpÎļþ¡£ËüÄܹ»Í¨¹ýdmpÎļþÇáËɵĶ¨Î»µ½ÎÊÌâ¸ùÔ´£¬¿ÉÓÃÓÚ·ÖÎöÀ¶ÆÁ¡¢³ÌÐò±ÀÀ££¨IE±ÀÀ££©Ô­Òò£¬ÊÇÎÒÃÇÈÕ³£¹¤×÷Öбز»¿ÉÉÙµÄÒ»¸öÓÐÁ¦¹¤¾ß£¬Ñ§»áʹÓÃËü£¬½«ÓÐЧÌáÉýÎÒÃǵÄÎÊÌâ½â¾öЧÂʺÍ׼ȷÂÊ¡£
        windbg

        ¡¾»ù±¾½éÉÜ¡¿

        ÅäÖÃWinDbg
        ÔËÐÐWinDbg->²Ëµ¥->File->Symbol File Path->°´ÕÕÏÂÃæµÄ·½·¨ÉèÖÃ_NT_SYMBOL_PATH±äÁ¿
        ÔÚµ¯³öµÄ¿òÖÐÊäÈë¡°C:\MyCodesSymbols; SRV*C:\MyLocalSymbols*http://msdl.microsoft.com/download/symbols¡±(°´ÕÕÕâÑùÉèÖã¬WinDbg½«ÏÈ´Ó±¾µØÎļþ¼ÐC:\MyCodesSymbolsÖвéÕÒSymbol£¬Èç¹ûÕÒ²»µ½£¬Ôò×Ô¶¯´ÓMSµÄSymbol ServerÉÏÏÂÔØSymbols)¡£ÁíÒ»ÖÖ×ö·¨ÊÇ´ÓÕâ¸öSymbolÏÂÔØµØÖ·ÖÐhttp://www.microsoft.com/whdc/devtools/debugging/symbolpkg.mspx£¬ÏÂÔØÏàÓ¦²Ù×÷ϵͳËùÐèÒªµÄÍêÕûµÄSymbol°²×°°ü£¬²¢½øÐа²×°£¬ÀýÈçÎÒ½«Æä°²×°ÔÚD:\WINDOWS\Symbols£¬ÔڸÿòÖÐÊäÈë¡°D:\WINDOWS\Symbols¡±¡££¨ÕâÀïҪעÒâÏÂÔØµÄSymbolsµÄ°æ±¾Ò»¶¨ÒªÕýÈ·£¬ÔÚÎÒµÄWin2003+Sp1ÉÏ£¬ÎÒÔø¾­ÒÔΪ°²×°Win2003+Sp2µÄSymbols¿ÉÄÜ»áÅ£¡Áµã£¬µ«½á¹ûÖ¤Ã÷ÎÒ´íÁË£¬ÓÃWinDbg´ò¿ª¿ÉÖ´ÐÐÎļþʱ£¬Ìáʾ¡°PDB symbol for mscorwks.dll not loaded;Defaulted to export symbols for ntdll.dll¡±µÄ´íÎó£¬ÎÒÓÐÖØÐÂ×°ÉÏWin2003+Sp1µÄSymbols, ÏÖÔÚÒ»ÇÐÔËÐÐÕý³£^_^£©

        ¡¾µ÷ÊÔ×¼±¸¡¿

        ΪÁ˲âÊÔ WinDbg ÖÐʹÓà SOS À©Õ¹ÃüÁÎÒ´´½¨ÁËÓ¦ÓóÌÐò "MemoryLeakApp.exe"£¬Visual Studio ³ÌÐòÑ¡ÔñΪ 64 λ»·¾³±àÒë¡£


        "MemoryLeakApp.exe" Æô¶¯ÔËÐкó¿ÉÄÜÕ¼ÓÃÄÚ´æ600M¡£


        ´Ëʱ£¬Ñ¡ÔñʹÓà 64 λ WinDbg À´µ÷ÊÔ³ÌÐò¡£ÎÒÃÇÏÈͨ¹ý Attach Process ·½Ê½À´µ÷ÊÔ¡£



        µ±È»£¬Èç¹ûÎÒÃÇʹÓÃÁË 32 λµÄ WinDbg È¥ Attach ½ø³Ì£¬»áÖ±½Ó±¨´í¡£

        ¡¾WinDbg³£ÓÃÃüÁîÊֲ᡿

        ÄÚÖðïÖúÃüÁî
        ?

        ?¡¡¡¡ ÏÔʾ³£¹æÃüÁî
        ? /D    ͨ¹ý DML(Debugging Markup Language) ·½Ê½ÏÔʾ³£¹æÃüÁî

        .help
        .help ¡¡¡¡ ÏÔʾ . ϵÁÐÃüÁî
        .help /D ͨ¹ý DML ·½Ê½ÏÔʾ . ϵÁÐÃüÁî
        .help /D a* ͨ¹ý DML ·½Ê½ÏÔʾËùÓÐÒÔ 'a' ×Öĸ¿ªÍ·µÄ . ϵÁÐÃüÁî


        .chain
        .chain ÁгöËùÓÐÒѼÓÔØµÄµ÷ÊÔÆ÷À©Õ¹
        .chain /D ͨ¹ý DML ·½Ê½ÁгöËùÓÐÒѼÓÔØµÄµ÷ÊÔÆ÷À©Õ¹


        .extmatch
        .extmatch /e ExtDLL FunctionFilter ÏÔʾµ÷ÊÔÆ÷À©Õ¹µÄËùÓе¼³öº¯Êý
        .extmatch /D /e ExtDLL FunctionFilter ͨ¹ý DML ·½Ê½ÏÔʾµ÷ÊÔÆ÷À©Õ¹ËùÓе¼³öº¯Êý
        .extmatch /D /e uext * ÏÔʾ uext À©Õ¹ÖеÄËùÓе¼³öº¯Êý


        .hh
        .hh ´ò¿ª WinDbg µÄ°ïÖúÎļþ
        .hh Text ´ò¿ª WinDbg µÄ°ïÖúÎļþ£¬²¢×Ô¶¯ËÑË÷ Text µÄÄÚÈÝ
        .hh dt ÔÚ WinDbg °ïÖúÎļþÖÐËÑË÷ dt ÃüÁî

        µ÷ÊԻỰÃüÁî
        .attach

        .attach PID ¸½¼Óµ½Ö¸¶¨IDµÄ½ø³Ì

        .detach
        .detach ½áÊøµ÷ÊԻỰ£¬±»µ÷ÊÔ½ø³ÌÈԿɼÌÐøÔËÐÐ


        q
        q ½áÊøµ÷ÊԻỰ£¬Í¬Ê±ÖÕÖ¹±»µ÷ÊÔ½ø³ÌµÄ½øÐÐ
        qq ½áÊøµ÷ÊԻỰ£¬Í¬Ê±ÖÕÖ¹±»µ÷ÊÔ½ø³ÌµÄ½øÐÐ

        .restart
        .restart ÖØÆô±»µ÷ÊÔÓ¦ÓÃ

        Ò»°ãÐÅÏ¢ÃüÁî
        version

        ÏÔʾµ÷ÊÔÆ÷°æ±¾ÐÅÏ¢ºÍÒѼÓÔØµÄµ÷ÊÔÆ÷À©Õ¹


        vercommand
        ÏÔʾµ÷ÊÔÆ÷Æô¶¯ÎļþµÄ·¾¶


        vertarget
        ÏÔʾĿ±ê»úÆ÷µÄ°æ±¾


        CTRL+ALT+V
        ´ò¿ª»ò¹Ø±Õ Verbose ģʽ¿ª¹Ø£¬Ä³Ð©ÃüÁîÔÚ´ËģʽÏ¿ÉÒÔ¸ø³ö¸ü¶àÏêϸÐÅÏ¢

        .formats
        .formats Expression ÏÔʾÊý×ֵĸ÷ÖÖ¸ñʽÐÅÏ¢
        .formats 5


        .cls
        ÇåÀíÆÁÄ»
        .last eventÏÔʾ×îеÄÒì³£ÐÅÏ¢»òʼþÐÅÏ¢

        .effmach
        .effmach ÏÔʾÓÐЧ×÷ÓõĻúÆ÷ÐÅÏ¢
        .effmach .
        .effmach #
        .effmach x86 | amd64 | ia64 | ebc

        .time
        ÏÔʾϵͳ¼Ç¼µÄ¸÷ÖÖʱ¼ä


        .echo
        .echo String Êä³ö×Ö·û´®
        .echo "String"
        .echo "Hello World"

        ·ûºÅ¼ÓÔØÃüÁî
        ld

        ld ModuleName ¼ÓÔØÖ¸¶¨Ä£¿éµÄ·ûºÅ
        ld * ¼ÓÔØËùÓÐÄ£¿éµÄ·ûºÅ


        !sym
        !sym »ñÈ¡·ûºÅ¼ÓÔØ×´Ì¬
        !sym noisy Èõ÷ÊÔÆ÷ÏÔʾ·ûºÅËÑË÷ÏêϸÐÅÏ¢
        !sym quiet ĬÈÏÏ²»ÏÔʾ·ûºÅËÑË÷ÐÅÏ¢


        .sympath
        .sympath ÏÔʾºÍÉèÖ÷ûºÅËÑË÷·¾¶
        .sympath+ Ôö¼Ó·ûºÅËÑË÷·¾¶
        .sympath+ C:\Symbols

        .symopt
        .symopt ÏÔʾµ±Ç°·ûºÅ¿ÉÑ¡Ïî
        .symopt+ Flags Ìí¼Ó·ûºÅ¿ÉÑ¡Ïî
        .symopt- Flags ÒÆ³ý·ûºÅ¿ÉÑ¡Ïî

        .symfix
        .symfix ÉèÖ÷ûºÅ¿â·¾¶
        .sym+ DownstreamStore Ìí¼Ó·ûºÅ¿â·¾¶

        x
        x [Options] Module!Symbol ģʽƥÅä·ûºÅÐÅÏ¢
        x /t .. ¸ù¾ÝÊý¾ÝÀàÐÍÆ¥Åä
        x /v .. ÏÔʾÏêϸÐÅÏ¢
        x /a .. °´ÕÕµØÖ·ÅÅÐò
        x /n .. °´ÕÕÃû³ÆÅÅÐò
        x /z .. °´ÕÕ´óСÅÅÐò
        x *! ÁгöËùÓÐÄ£¿é

        x ntdll!* Áгö ntdll Ä£¿é

        x /t /v ntdll!* Áгö ntdll Ä£¿éÊý¾ÝÀàÐͺͷûºÅÀàÐÍ


        .reload
        .reload ÖØÐ¼ÓÔØ·ûºÅÐÅÏ¢
        .reload [/f | /v] /f Ç¿ÖÆÁ¢¼´¼ÓÔØ·ûºÅ /v ÏÔʾÏêϸÐÅÏ¢
        .reload [/f | /v] Module Module Ϊָ¶¨Ä£¿é¼ÓÔØ·ûºÅÐÅÏ¢
        .reload /f @"ntdll.dll"
        .reload /f @"C:\WINNT\System32\verifier.dll"

        Ä£¿é¼ÓÔØÃüÁî

        lm

        lm[ v | l | k | u | f ] [m Pattern] ÏÔʾÒѼÓÔØµÄÄ£¿é
        lm ÏÔʾËùÓмÓÔØºÍδ¼ÓÔØµÄÄ£¿éÐÅÏ¢

        lmv ÏÔʾÒѼÓÔØÄ£¿éµÄÏêϸÐÅÏ¢
        lml ͬʱÏÔʾ¼ÓÔØµÄ·ûºÅÐÅÏ¢
        lmk ÏÔʾÄÚºËÄ£¿éÐÅÏ¢
        lmu ÏÔʾÓû§Ä£¿éÐÅÏ¢
        lmf ÏÔʾ¾µÏñ·¾¶
        lmm Æ¥ÅäÄ£¿éÃû³Æ
        lmD ʹÓà DML ·½Ê½ÏÔʾ

        lmv m kernel32 ÏÔʾ kernel32 Ä£¿éÏêϸÐÅÏ¢


        !dlls
        !dlls ÁгöËùÓмÓÔØµÄÄ£¿éºÍ¼ÓÔØÊýÁ¿
        !dlls -i ¸ù¾Ý³õʼ»¯Ë³Ðò
        !dlls -l ¸ù¾Ý¼ÓÔØË³Ðò£¨Ä¬ÈÏÏ
        !dlls -m ¸ù¾ÝÄÚ´æË³Ðò
        !dlls -v ÏÔʾ¸ü¶àÏêϸÐÅÏ¢
        !dlls -c ModuleAddr ½öÏÔʾ ModuleAddr µØÖ·µÄÄ£¿éÐÅÏ¢
        !dlls -? ÏÔʾ°ïÖú
        !dlls -v -c kernel32 ÏÔʾ kernel32.dll µÄÐÅÏ¢

        !lmi

        !lmi Module ÏÔʾģ¿éµÄÏêϸÐÅÏ¢£¬°üÀ¨¼ÓÔØ·ûºÅÐÅÏ¢
        !lmi kernel32 ÏÔʾ kernel32.dll Ä£¿éµÄÐÅÏ¢


        Òì³£·ÖÎöÃüÁî
        !analyze

        !analyze -v ÏÔʾµ±Ç°Òì³£µÄÏêϸÐÅÏ¢
        !analyze -hang Õï¶ÏÏ̵߳÷ÓÃÕ»ÉÏÊÇ·ñÓÐÈκÎÏß³Ì×èÈûÁËÆäËûÏß³Ì
        !analyze -f ²é¿´Òì³£·ÖÎöÐÅÏ¢£¬¾¡¹Üµ÷ÊÔÆ÷²¢Î´Õï¶Ï³öÒì³£


        ½ø³ÌÐÅÏ¢ÃüÁî
        !dml_proc

        ͨ¹ý DML ·½Ê½ÏÔʾµ±Ç°½ø³ÌµÄÐÅÏ¢


        .tlist
        ÏÔʾµ±Ç°ËùÓнø³Ì


        Ïß³ÌÐÅÏ¢ÃüÁî
        ~
        ~ ÏÔʾÏß³ÌÐÅÏ¢

        ~* [Command] ËùÓÐÏß³Ì

        ~. [Command] µ±Ç°Ïß³Ì

        ~# [Command] Òý·¢µ±Ç°Ê¼þ»òÒì³£µÄÏß³Ì
        ~Number [Command] ÏÔʾָ¶¨ÐòºÅµÄÏß³Ì
        ~~[TID] [Command] ÏÔʾָ¶¨Ïß³ÌIDµÄÏß³Ì
        ~Ns Çл»µ½Ïß³Ì N
        ~* k ÏÔʾËùÓÐÏ̵߳ĵ÷ÓÃÕ»
        ~2 f ¶³½á2ºÅÏß³Ì
        ~# f ¶³½áÒý·¢Òì³£µÄÏß³Ì
        ~3 u ½â³ý¶Ô3ºÅÏ̵߳ͳ½á
        ~2 k ÏÔʾ2ºÅÏ̵߳ĵ÷ÓÃÕ»


        ~e
        ~* e CommandString ÔÚËùÓÐÏß³ÌÉÏÖ´ÐÐÃüÁî
        ~. e CommandString ÔÚµ±Ç°Ïß³ÌÉÏÖ´ÐÐÃüÁî
        ~# e CommandString ÔÚÒý·¢Òì³£µÄÏß³ÌÉÏÖ´ÐÐÃüÁî
        ~Number e CommandString ÔÚÖ¸¶¨ÐòºÅµÄÏß³ÌÉÏÖ´ÐÐÃüÁî
        ~2e r; k; kd Ï൱ÓÚ ~2r; ~2k; ~2kd
        ~*e !gle ÏÔʾËùÓÐÏ̵߳Ä×îºóÒ»¸ö´íÎóÐÅÏ¢


        ~f
        ~Thread f ¶³½áÏß³Ì

        ~u
        ~Thread u ½â³ý¶³½áÏß³Ì

        ~n
        ~Thread n ¹ÒÆðỊ̈߳¬Ôö¼ÓÏß³Ì¹ÒÆðÊýÁ¿

        ~m
        ~Thread m »Ö¸´Ị̈߳¬¼õÉÙÏß³Ì¹ÒÆðÊýÁ¿

        !teb
        ÏÔʾÏ̻߳·¾³ÐÅÏ¢


        !tls
        !tls -1 -1 ΪÏÔʾµ±Ç°Ïß³ÌËùÓÐµÄ slot ÐÅÏ¢
        !tls SlotIdx ÏÔʾָ¶¨µÄ slot ÐÅÏ¢
        !tls [-1 | SlotIdx] TebAddr


        .ttime
        ÏÔʾÏß³Ìʱ¼äÐÅÏ¢


        !runaway
        [Flags: 0 | 1 | 2] ÏÔʾÿ¸öÏß³ÌÏûºÄµÄʱ¼ä£¬ÓÃÓÚ¿ìËٵIJéÕÒ CPU ʱ¼äÏûºÄ×î¶àµÄÏß³Ì
        0 Óû§Ì¬Ê±¼ä
        1 ÄÚºË̬ʱ¼ä
        2 ×ÔÏ̴߳´½¨ÆðµÄʱ¼ä¼ä¸ô


        !gle
        !gle ÏÔʾµ±Ç°Ï̵߳Ä×îºó´íÎó
        !gle -all ÏÔʾËùÓÐÏ̵߳Ä×îºó´íÎó

        !error
        !error ErrValue ½âÎö´íÎóÐÅÏ¢
        !error ErrValue 1 ½«´íÎóÖµ×÷Ϊ NTSTATUS ´úÂë

        ¶ÑÕ»ÐÅÏ¢ÃüÁî
        k

        k [n] [f] [L] [#Frames] ÏÔʾµ÷ÓÃÕ»ÐÅÏ¢
        kn µ÷ÓÃÕ»°üº¬Ö¡ºÅ
        kf ÁÙ½üÖ¡µÄ¾àÀë
        kL ºöÂÔÔ´´úÂë
        kb ... ×ʼµÄ 3 ²ÎÊý
        kp ... ËùÓеIJÎÊý£¬°üÀ¨²ÎÊýÀàÐÍ¡¢Ãû³ÆºÍÖµ
        kP ... ËùÓеIJÎÊý
        kv ... FPOÐÅÏ¢
        kb 5 ÏÔʾ×ʼµÄ 5 ¸öÖ¡


        kd
        kd [WordCnt] ÏÔʾԭʼջÊý¾ÝºÍ¿ÉÄܵķûºÅÐÅÏ¢

        kM
        ʹÓà DML ¸ñʽÏÔʾ¶ÑÕ»ÐÅÏ¢

        .kframes
        ÉèÖÃÕ»³¤¶È£¬Ä¬ÈÏÊÇ20£¨0x14£©

        .frame

        .frame ÏÔʾµ±Ç°Ö¡
        .frame # Ö¸¶¨Ö¡ºÅ
        .frame /r [#] ÏÔʾ¼Ä´æÆ÷ÐÅÏ¢
        .frame 2 ÏÔʾ֡ºÅ 2 µÄÐÅÏ¢
        .frame /r 0d ÏÔʾ 0 Ö¡ÖмĴæÆ÷ÐÅÏ¢


        !uniqstack
        !uniqstack ÏÔʾËùÓÐÏ̵߳ÄÕ»ÐÅÏ¢
        !uniqstack [b|v|p] [n] b=ǰ3¸ö²ÎÊý£»v=FPOÐÅÏ¢£»p=ËùÓвÎÊý£»n=Ö¡ºÅ
        !uniqstack -? ÏÔʾ°ïÖú


        !findstack
        !findstack Symbol ÕÒµ½°üº¬·ûºÅ»òÄ£¿éµÄÕ»
        !findstack Symbol [0|1|2] 0=½öÏÔʾÏß³ÌID£»1=Ïß³ÌIDºÍÖ¡£»2=È«²¿µÄÏß³ÌÕ»£»
        !findstack -? ÏÔʾ°ïÖú
        !findstack clr 2 ÏÔʾ°üº¬ clr µÄËùÓÐÕ»µÄÐÅÏ¢


        À©Õ¹°ïÖúÃüÁî
        !Ext.help
        ³£¹æÀ©Õ¹ÃüÁî°ïÖú


        !Exts.help



        !Uext.help
        Óû§Ì¬Ä£Ê½À©Õ¹ÃüÁî°ïÖú


        !Ntsdexts.help
        Óû§Ì¬À©Õ¹ÃüÁî°ïÖú£¨OSÏà¹Ø£©


        !logexts.help
        ÈÕÖ¾Ïà¹ØÀ©Õ¹


        !clr10\sos.help
        µ÷ÊÔÍйܴúÂë

        !wow64exts.help
        wow64µ÷ÊÔÆ÷À©Õ¹

        !Wdfkd.help
        ÄÚºË̬Çý¶¯¿ò¼ÜÀ©Õ¹

        !Gdikdx.help
        ͼÐÎÇý¶¯À©Õ¹

        !NAME.help
        ÏÔʾÈκΠNAME Ãû³ÆµÄÀ©Õ¹ÃüÁîµÄ°ïÖú

        ÈÕÖ¾À©Õ¹ÃüÁî

        !logexts.help

        ÏÔʾËùÓÐÈÕÖ¾À©Õ¹ÃüÁî

        !loge
        !loge [dir] ´ò¿ªÈÕÖ¾¹¦ÄÜ£¬¿ÉÑ¡ÅäÖÃÊä³öĿ¼

        !logi
        ³õʼ»¯ÈÕÖ¾¹¦ÄÜ

        !logd
        ¹Ø±ÕÈÕÖ¾¹¦ÄÜ

        !logo
        !logo ÁгöÈÕÖ¾ÅäÖÃÐÅÏ¢
        !logo [e|d] [d|t|v] ´ò¿ª»ò¹Ø±ÕÈÕÖ¾£¬d=µ÷ÊÔÆ÷£¬t=Îı¾Îļþ£¬v=ÏêϸÐÅÏ¢

        !logc
        !logc ÁгöËùÓÐÈÕÖ¾ÀàÐÍ
        !logc p # Áгö # ÖеÄÈÕÖ¾ÀàÐÍ
        !logc [e|d] * ´ò¿ª»ò¹Ø±ÕËùÓÐÈÕÖ¾ÀàÐÍ
        !logc [e|d] # [#] [#] ´ò¿ª»ò¹Ø±ÕÈÕÖ¾ÀàÐÍ #

        !logb
        !logb p ´òÓ¡»º³åÇøÐÅÏ¢ÖÁµ÷ÊÔÆ÷
        !logb f ˢлº³åÇøÄÚÈÝÖ®ÈÕÖ¾Îļþ

        !logm
        !logm ÏÔʾģ¿éµÄ°üº¬»òÆÁ±ÎÁбí
        !logm [i|x] [DLL] [DLL] Ö¸¶¨Ä£¿éµÄ°üº¬»òÆÁ±ÎÁбí

        ¡¾Ê¹Óý̡̳¿ 

        SymbolÉ趨
        Á¬»ù±¾µÄ Symbol ¶¼Ã»ÓÐÉ趨, ÒªÔõ÷áÍæ Kernel ѽ?
        ½ÓÏÂÀ´ÎÒ»á step by step ½â˵ Symbol µÄÉ趨·½·¨
        Ê×ÏÈÕâÀï¼ÙÉèÄãÒѾ­°Ñ WinDBG °²×°ºÃÁË
        Ò». Æô¶¯ WinDBG áá, Äã»áÔÚÏÂÃæÃüÁîÁп´µ½ Debuggee not connected
        ºÃ~, ¿ªÊ¼½¨Á¢Á¬½á [File] -> [Kernel Debug] , Ö®áá»á³öÏÖ¶Ô»°ºÐ
        ¶Ô»°ºÐÀïÃæÓиö Tab Control, µãÑ¡ Local ҳǩ, È»áá°´ [È·¶¨]
        ¼ÙÈçÄãÊǵÚÒ»´ÎÆô¶¯, ¿ÉÄÜ»á³öÏÖÒ»¸ö¶Ô»°ºÐ, »áÎÊÄãÒª²»Òª´¢´æ workspace,
        °´ [Yes], ÕâÑù¾ÍÍê³É½¨Á¢ÁËÒ»¸ö Debuggee µÄÁ¬½á
        ÕâʱÄã¿ÉÒÔÊäÈë version, ¿´Ò»ÏÂϵͳµÄÏà¹Ø×ÊѶºÍ Debugger µÄ°æ±¾
        ¶þ. ½ÓÏÂÀ´Òª¸ã¶¨ SymBol É趨, Õⲿ·ÖºÜÖØÒª, ÄãÒ»¶¨ÒªÁ˽â
        ´Ó [File] -> [Symbol File Path], »òÕß°´ Ctrl + S,
        Ö®áá»á³öÏÖÒ»¸öÒÔ Symbol Search Path Ϊ Title µÄ¶Ô»°ºÐ, ¿ªÊ¼É趨 SymBol ·¾¶
        ÊäÈë C:\Windows\Symbols;SRV*C:\Windows\Symbols*http://msdl.microsoft.com/download/symbols
        È»áá°´ [È·¶¨]
        ÎÒÏȽâ˵Õâ¸öÊäÈëµÄÓÃÒâ, Ëü·Ö³ÉÁ½²¿·Ö
        Ò»¸öÊÇ C:\Windows\Symbols
        ÁíÒ»¸öÊÇ SRV*C:\Windows\Symbols*http://msdl.microsoft.com/download/symbols
        Á½¸öÒԷֺŠ";" ¸ô¿ªµÄ
        ÆäÓÃÒâ¾ÍÊǸæËß WinDBG Èç¹ûÄãÔÚ C:\Windows\Symbols Õâ¸öĿ¼ÏÂÕÒ²»µ½ Symbol,
        ÄÇ÷á¾Íµ½ http://msdl.microsoft.com/download/symbols ÕâÍøÖ·È¥ÕÒ,
        ²¢ÇÒ°ÑÕÒµ½µÄ Symbol File ÏÂÔØµ½ C:\Windows\Symbols Ŀ¼µ×Ï (SRV*C:\Windows\Symbols*)
        ÕâÑù¾ÍÍê³ÉÁË Symbol File Path µÄÉ趨ÁË
        ÓÐʱºò»áÓкܶàÆäËü×´¿ö, ÀýÈç WinDBG »á˵ÕÒ²»µ½Ñ½,
        ½â¾ö·½·¨¾ÍÊÇ reload (Reload Module)
        ÔÚ Symbol File Path µÄÉ趨¶Ô»°ºÐÏÂÃæÓиö reload µÄ CheckBox,
        °ÑËü´ò¹´, È»áá°´ [È·¶¨], ÈÃËü×Ô¶¯ÖØÐÂÔØÈë
        ÁíÍâ, ÄãÒ²¿ÉÒÔʹÓÃÄÚ½¨Ö¸Áî .reload , ¿ìËÙµÄ Reload Module
        Èý. ½ÌÄãÈçºÎÒ»´ÎÐÔµÄÍêÕûÏÂÔØËùÓÐ Symbol Files
        ƽ³£ÎÒÃǶ¼Ö»ÊÇÔڲ鿴 Ntdll µÄº¯Êý, »òÕ߲鿴 Service Descriptor Table
        ÕâÑù WinDBG Ö»»áÏÂÔØ ntdll.pdb ºÍ ntkrnlmp.pdb »òÕß win32k.pdb µ½ C:\Windows\Symbol
        µ«ÆäËüµÄÄØ, ÍòÒ»ÄÄÌìÒªÓõ½¶ø Micro$oft ÓÖÍ£Ö¹Ö§Ô®Ôõ°ì, àÅ~°ÑËüÒ»´ÎͨͨÏÂÔØµ½ C:\Windows\Symbol ºÃÁË
        Æô¶¯ DOS Command Line, Ò²¾ÍÊÇ cmd.exe
        [¿ªÊ¼] -> [Ö´ÐÐ] -> ÊäÈë cmd -> °´ [È·¶¨] , »á³öÏÖ DOS µÄ Command Line ÊÓ´°
        ÏÈÌø½ø WinDBG °²×°Ä¿Â¼
        ÔÚ DOS ÊÓ´°ÊäÈë cd C:\Program Files\Debugging Tools for Windows (x86), °´ [Enter]
        È»ááÔÙÊäÈë
        symchk.exe /r C:\Windows\system32 /s SRV*C:\Windows\Symbols*http://msdl.microsoft.com/download/symbols
        °´ [Enter] ááËü¾Í¿ªÊ¼×Ô¶¯É¨ÃèºÍÏÂÔØ C:\Windows\system32 Ŀ¼Ïµĵµ°¸µÄ Symbol File µ½ C:\Windows\Symbols
        µ±È»ÄãÒ²¿ÉÒÔɨÃèºÍÏÂÔØÆäËûĿ¼ÏÂϵͳµµ°¸µÄ Symbol Files
        ÀýÈçɨÃè .Net µÄµµ°¸, ÔÚ DOS µÄCommand Line ÊÓ´°ÊäÈë
        symchk.exe /r C:\WINDOWS\Microsoft.NET\Framework /s SRV*C:\Windows\Symbols*http://msdl.microsoft.com/download/symbols
        µ«²»½¨Òé·ÅÔÚͬһ¸öĿ¼, ½¨Òé¸Ä·Åµ½ C:\Windows\NetSymbols
        Ö¸Áî¾Í±ä³É
        symchk.exe /r C:\WINDOWS\Microsoft.NET\Framework /s SRV*C:\Windows\NetSymbols*http://msdl.microsoft.com/download/symbols

        WinDBGʹÓ÷½·¨ÈëÃÅ

        Ê×ÏÈÔÚ±¾Ò³ÏÂÔØ¸ÃÈí¼þ²¢ÇÒ°²×°
        °²×°³É¹¦ºó£¬¿ÉÒÔÎÒ¿ªÊ¼²Ëµ¥£¬³ÌÐòÖÐÕÒµ½²¢Æô¶¯Windbg¡£

        Æô¶¯ºóÖ÷½çÃæÈçͼ¡£

        ÎÒÃÇ¿ÉÒÔÑ¡ÔñÎļþ£¨File£©²Ëµ¥¡·¸½¼Óµ½Ò»¸ö½ø³Ì¡£

        ÔÚ´ò¿ªµÄÁбíÖÐÑ¡ÔñÄãÒªµ÷ÊԵĽø³Ì¡£

        ÓеĽø³Ì¿ÉÄÜȨÏޱȽϸߣ¬ÎÞ·¨µ÷ÊÔ¡£

        ÎÒÃÇʹÓùÜÀíÔ±Éí·ÝÔËÐÐWindbg¡£

        ÔÙÑ¡Ôñ½ø³Ì£¬¸½¼Ó½ø³Ì¡£

        »¹ÊDZ¨´í£¬Õâ˵Ã÷´Ë³ÌÐòÓÐ×ÔÎÒ±£»¤»úÖÆ£¬ÎÞ·¨½øÐе÷ÊÔ¡£

        Èç¹û³ÌÐòûÓÐ×ÔÎÒ±£»¤£¬¸½¼Óºó»áÏÔʾÈçͼËùʾ¡£

        ´ó¼Ò¶¼Ï²»¶

        • µçÄÔÈí¼þ
        • ÊÖ»úÈí¼þ
        ¸ü¶à>

        Óû§ÆÀÂÛ

        £¨ÄúµÄÆÀÂÛÐèÒª¾­¹ýÉóºË²ÅÄÜÏÔʾ£© ¹²0È˲ÎÓë,0ÌõÆÀÂÛ
        140

        ×îÐÂÆÀÂÛ

        »¹Ã»ÓÐÆÀÂÛ£¬¿ìÀ´ÇÀɳ·¢°É£¡

        Çë¼òÒªÃèÊöÄúÓöµ½µÄ´íÎó£¬ÎÒÃǽ«¾¡¿ìÓèÒÔÐÞ¶©

        ·µ»Ø¶¥²¿