• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            S.l.e!ep.¢%

            像打了激速一樣,以四倍的速度運(yùn)轉(zhuǎn),開心的工作
            簡(jiǎn)單、開放、平等的公司文化;尊重個(gè)性、自由與個(gè)人價(jià)值;
            posts - 1098, comments - 335, trackbacks - 0, articles - 1
              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理
            ????? 放假回家就下定決心要把windbg搞定 否則以后的內(nèi)核之路該咋走啊~呵呵 今天就網(wǎng)上零零碎碎的記了些命令用法? 看了別人的調(diào)試教程
            個(gè)人總結(jié)下

            ----------------------------------------------------------------------------
            !drvobj 你的驅(qū)動(dòng)對(duì)象 [標(biāo)志位]
            說明:這個(gè)指令可以查看驅(qū)動(dòng)對(duì)象的具體信息 我們知道每個(gè)驅(qū)動(dòng)程序在內(nèi)核中都會(huì)對(duì)應(yīng)一個(gè)驅(qū)動(dòng)對(duì)象的結(jié)構(gòu),其實(shí)上面所說的驅(qū)動(dòng)對(duì)象就是你的驅(qū)動(dòng)名字,比如我要找aynet.sys這個(gè)驅(qū)動(dòng)程序的驅(qū)動(dòng)對(duì)象結(jié)構(gòu),那么我就!drvobj aynet 就好啦~
            標(biāo)志位是用來告訴windbg具體要顯示什么內(nèi)容的,標(biāo)志位可以組合使用
            Bit 0 (0x1)
            顯示所有跟這個(gè)驅(qū)動(dòng)對(duì)象相關(guān)聯(lián)的設(shè)備對(duì)象信息
            Bit 1 (0x2)
            顯示所有跟這個(gè)驅(qū)動(dòng)想關(guān)的派遣例程信息
            Bit 2 (0x4)
            顯示這個(gè)驅(qū)動(dòng)對(duì)象的詳細(xì)信息 (需要標(biāo)志位0)
            ps: !object 可以查看對(duì)象的詳細(xì)信息 比如該內(nèi)核對(duì)象是什么內(nèi)核對(duì)象(文件,進(jìn)程等)
            類似用法還有!handle(就是!后面跟結(jié)構(gòu)名)等等
            ----------------------------------------------------------------------------
            dt name
            說明:dt用來查看本地|全局|結(jié)構(gòu)變量?jī)?nèi)容的 , name是指你的變量類型是什么,你要看_DEVICE_OBJECT這個(gè)結(jié)構(gòu)變量就直接打 dt _DEVICE_OBJECT? 查看變量就直接輸變量名
            ----------------------------------------------------------------------------
            下面說說下斷點(diǎn)的指令
            bp 地址
            在地址處下斷點(diǎn) 也可以是函數(shù)名(其實(shí)函數(shù)名就對(duì)應(yīng)著地址)
            打個(gè)比方bp aynet!DriverEntry 說明在aynet這個(gè)驅(qū)動(dòng)程序的driverentry函數(shù)處下斷 也就是程序一執(zhí)行到這里windbg就自動(dòng)斷下來了
            還有個(gè)bu指令 延遲下斷點(diǎn) 格式跟bp差不多

            bm 匹配值
            bm指令用于匹配模式下斷點(diǎn) 比如說bm aynet!Driver* 可以把a(bǔ)ynet驅(qū)動(dòng)下所有跟Driver* 模式匹配的函數(shù)斷下 但是注意~需要符號(hào)表的支持

            ba 變量名
            可以對(duì)內(nèi)存訪問下斷點(diǎn) 比如說你程序里有個(gè)aynet驅(qū)動(dòng)程序a變量,總被莫名其妙的修改了,那么你可以設(shè)置 ba aynet!a ,當(dāng)這個(gè)a值被修改的時(shí)候就可以被windbg斷下來了

            還有其他常用命令比如
            BL(List)列舉斷點(diǎn),BC(Clear)清除斷點(diǎn),BE(Enable)啟用斷點(diǎn),BD(Disable)禁止斷點(diǎn)
            這些很簡(jiǎn)單 就不累述了
            ----------------------------------------------------------------------------
            注:一下指令區(qū)分大小
            顯示內(nèi)存數(shù)據(jù)相關(guān)指令
            格式:d[*] 變量名/地址
            da--asc字符顯示
            db--byte&asc字符顯示
            dc--雙字節(jié)&asc字符顯示
            dd--雙字節(jié)變量顯示
            dD--雙精浮點(diǎn)數(shù)顯示
            df--單精浮點(diǎn)數(shù)顯示
            dp--四字節(jié)數(shù)值顯示
            du--unicode字符顯示
            dw--字符(2個(gè)字節(jié))顯示
            dW--字符和asc字符顯示
            dyb--二進(jìn)制顯示
            dyd--二進(jìn)制和雙字節(jié)顯示
            舉個(gè)例子:(注:xx是變量名 )
            kd> dd xx????? //雙字節(jié)顯示(即16進(jìn)制)
            8055b260? 610f0f64 00000002 00000000 00000000
            8055b270? 00000000 00000000 00000000 00000000
            8055b280? 00000000 00000000 00000000 00000000
            8055b290? 00000000 00000000 00000000 00000000
            8055b2a0? 00000000 00000000 00000000 00000000
            8055b2b0? 00000000 00000000 00000000 00000000
            8055b2c0? 00000000 00000000 00000000 00000000
            8055b2d0? 00000000 00000000 00000000 00000000
            kd> da xx? //asc字符顯示
            8055b260? "`."
            kd> du xx? //unicode字符顯示
            8055b260? "..."

            附加:
            dv
            查看本地變量用~

            看內(nèi)存內(nèi)容的時(shí)候就會(huì)用到這個(gè)命令了~呵呵
            ----------------------------------------------------------------------------
            今天就學(xué)了這么多
            剩下的明天在看 呵呵
            下次要說的內(nèi)容是
            堆棧顯示指令kb , kp, kP , kv
            反匯編指令 u,uf
            跟蹤指令 T,TA,TB,TC
            執(zhí)行相關(guān)指令 P,PA,PC
            跟蹤查看指令 WT
            先記下來~省的我忘了~
            要調(diào)試也就大概就用到這些命令了吧 以后就開始記我的調(diào)試過程了~

            成人精品一区二区久久| 久久99精品国产99久久6| 亚洲国产日韩综合久久精品| 亚洲欧美一级久久精品| 亚洲国产精品无码久久久秋霞2| 久久精品青青草原伊人| 成人国内精品久久久久一区| 亚洲国产成人久久精品影视| 久久婷婷色香五月综合激情| 久久精品国产亚洲网站| 一级a性色生活片久久无| 国产精品久久久福利| 要久久爱在线免费观看| 久久99精品综合国产首页| 亚洲欧洲精品成人久久奇米网| 国产精品青草久久久久婷婷| 久久大香萑太香蕉av| 国产精品内射久久久久欢欢| 精品多毛少妇人妻AV免费久久| 色综合色天天久久婷婷基地| 久久丫精品国产亚洲av不卡| 日本五月天婷久久网站| 久久久久香蕉视频| 91精品国产高清久久久久久国产嫩草 | 久久国产一片免费观看| 久久无码人妻一区二区三区午夜| 久久久久亚洲AV综合波多野结衣| 久久亚洲精品人成综合网| 伊人久久精品无码av一区| 国产成人精品综合久久久| 久久亚洲精品国产亚洲老地址| 久久久久这里只有精品 | 久久亚洲AV无码西西人体| 国产毛片久久久久久国产毛片| 99久久久久| 精品国产青草久久久久福利 | 亚洲一区精品伊人久久伊人| 久久青青国产| 久久久久亚洲国产| 99久久精品免费看国产一区二区三区| 久久青青草视频|