• <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>

            Tiany 's Blog

            奮斗的路上肯定會(huì)遇到很多困難 該不該繼續(xù)?

              C++博客 :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
              15 Posts :: 1 Stories :: 28 Comments :: 0 Trackbacks

            常用鏈接

            留言簿(1)

            我參與的團(tuán)隊(duì)

            搜索

            •  

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            新建一個(gè)空的win32控制臺(tái)程序

             1、選(文件→新建→項(xiàng)目→Visual C++項(xiàng)目→win32win32控制臺(tái)項(xiàng)目)創(chuàng)建一個(gè)

             

            填寫(xiě)上名稱event然后按確定
            在彈出的win32應(yīng)用程序向?qū)Ю?/span> 選應(yīng)用程序設(shè)置 →附加選項(xiàng) 勾選空項(xiàng)目→完成。

             

             、  選項(xiàng)目菜單→添加現(xiàn)有項(xiàng)→添加所有驅(qū)動(dòng)相關(guān)的*.h,*.c,*.cpp,*.rc之類的文件。

            選工具(T)→選項(xiàng)(O)....→項(xiàng)目→VC++目錄→

              1、在可執(zhí)行文件目錄中添加:

                D:/WINDDK/3790.1830/BIN/X86   //VS2003(沒(méi)測(cè)),VS2005(沒(méi)測(cè)),VS2008內(nèi)不需要

             

              2、在包含文件目錄添加如下路徑

                D:/WINDDK/3790.1830/inc/wxp
                D:/WINDDK/3790.1830/inc/crt    (
            可選)
                D:/WINDDK/3790.1830/inc/ddk/wxp
                D:/WINDDK/3790.1830/inc/ddk/wdm/wxp

             

              3、在庫(kù)文件目錄中添加:

                D:/WINDDK/3790.1830/LIB/WXP/I386

             

            項(xiàng)目event屬性設(shè)置 

            新建項(xiàng)目配置check //必選

            ()C/C++屬性設(shè)置

               常規(guī)選項(xiàng)卡

            1調(diào)試信息格式(C7兼容(/Z7) //可選

            2警告等級(jí)    2級(jí)(/W2)  //可選

            3將警告視為錯(cuò)誤((/wx)  //可選

               優(yōu)化選項(xiàng)卡

            1優(yōu)化(禁用/Od)          //可選

              預(yù)處理器

                預(yù)處理器定義:WIN32=100;_X86_=1;WINVER=0x501;DBG=1   //必選

              代碼生成

                啟用最小重新生成:否   //可選

                基本運(yùn)行時(shí)檢查:默認(rèn)值//可選

                運(yùn)行時(shí)庫(kù):多線程調(diào)試(/MTd)  多線程(/MT)  //建議選

                緩沖區(qū)安全檢查:否   //可選

             (可避免出現(xiàn)LINK : error LNK2001: 無(wú)法解析外部符號(hào)__security_cookie)

              高級(jí)

             調(diào)用約定__stdcall(/Gz)   //必選

            鏈接器

             常規(guī):

             輸出文件:$(OutDir)/$(ProjectName).sys //必選

             啟用增量鏈接:否(/INCREMENTAL:NO) //建議選上

             

            忽略導(dǎo)入庫(kù):是//可選設(shè)置為此值時(shí),必須在附加庫(kù)目錄中加:D:/WINDDK/3790.1830/lib/wxp/i386 ,這樣項(xiàng)目就不會(huì)依賴IDE環(huán)境的設(shè)置)   設(shè)置為此值時(shí),將依賴IDE 的環(huán)境的相關(guān)設(shè)置)

             輸入:

            附加依賴項(xiàng)ntoskrnl.lib Hal.lib wdm.lib wdmsec.lib wmilib.lib ndis.lib MSVCRT.LIB LIBCMT.LIB //必選其12

            //NT式驅(qū)動(dòng)ntoskrnl.lib  WDM式驅(qū)動(dòng)  wdm.lib
             ( HalXXX
            函數(shù)在Hal.libWmiXXX函數(shù)在wmilib.lib NdisXXX函數(shù)在ndis.lib )
             
            必要時(shí)需要增加微軟的標(biāo)準(zhǔn)庫(kù)MSVCRT.LIB MSVCRTD.LIB(調(diào)試庫(kù)) LIBCMT.LIBIBCMTD.LIB(調(diào)試庫(kù)) )
             
            如果源碼中有source 文件,那么該文件的TARGETLIBS 字段會(huì)列出該項(xiàng)目需要的庫(kù))

                忽略所有默認(rèn)庫(kù):是(/NODEFAULTLIB)

             清單文件:

               啟用用戶賬戶控制(UAC //必選 不然會(huì)出現(xiàn) >LINK : fatal error LNK1295: “/MANIFESTUAC”“/DRIVER”規(guī)范不兼容;鏈接時(shí)不使用“/MANIFESTUAC” 

             調(diào)試:

                生成調(diào)試信息 (/DEBUG) //可選

                生成映像文件:是(/MAP)  //可選

                映像文件名:$(TargetDir)$(TargetName).map //可選

              系統(tǒng)(System)

                子系統(tǒng):控制臺(tái)(/SUBSYSTEM:CONSOLE) //必選

                堆棧保留大小:4194304 //可選

                堆棧提交大小:4096    //可選

                驅(qū)動(dòng)程序:   驅(qū)動(dòng)程序(/DRIVER) //必選 

                高級(jí):

            入口點(diǎn):DriverEntry   //必選

            隨機(jī)基址:默認(rèn)值    //必選 不然會(huì)出現(xiàn) 1>G:/event2008/check/event2008.exe : fatal error LNK1295: “/DYNAMICBASE”“/DRIVER”規(guī)范不兼容;鏈接時(shí)不使用“/DYNAMICBASE”

            數(shù)據(jù)執(zhí)行保護(hù)(DEP): 默認(rèn)值//必選 不然會(huì)出現(xiàn)G:/event2008/check/event2008.sys : fatal error LNK1295: “/NXCOMPAT:NO”“/DRIVER”規(guī)范不兼容;鏈接時(shí)不使用“/NXCOMPAT:NO”

             

            設(shè)置效應(yīng)和:是(/RELEASE) //可選

            基址:0x10000          //建議選上

              命令行”->附加選項(xiàng):

                添加開(kāi)關(guān):/SECTION:INIT,D /IGNORE:4078 //建議填上

                  可以避免以下錯(cuò)誤提示
                  LINK : warning LNK4078: 
            找到多個(gè)“INIT”節(jié),它們具有不同的屬性(E2000020)
                  LINK : error LNK2001: 
            無(wú)法解析的外部符號(hào)__load_config_used

            五.編譯,鏈接。

            一些要修改DDK例子源碼方能成功的問(wèn)題,目前不知道什么選項(xiàng)可以不改:
                
            源碼中的關(guān)鍵字try 要改為__try , except 要改為__except .

            posted on 2013-03-23 20:20 Tiany 閱讀(1661) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 內(nèi)核與驅(qū)動(dòng)
            久久久综合香蕉尹人综合网| 很黄很污的网站久久mimi色| 欧美日韩中文字幕久久久不卡| 2022年国产精品久久久久| 亚洲伊人久久综合影院| 久久综合伊人77777麻豆| 精品久久久久中文字幕一区| 88久久精品无码一区二区毛片 | 国产精品熟女福利久久AV| 高清免费久久午夜精品| 久久国产乱子伦免费精品| 一本久道久久综合狠狠爱| 亚洲国产美女精品久久久久∴| 久久人人爽人人爽人人片AV高清 | 国产一区二区三区久久精品| 久久婷婷成人综合色综合| 激情伊人五月天久久综合| 国产精品久久国产精麻豆99网站| 久久婷婷五月综合国产尤物app| 久久午夜伦鲁片免费无码| 99国产欧美久久久精品蜜芽| 色综合久久精品中文字幕首页| 成人精品一区二区久久久| 久久人人爽人爽人人爽av| 一级A毛片免费观看久久精品| 四虎国产精品成人免费久久| 精产国品久久一二三产区区别| 亚洲乱码精品久久久久..| 久久精品人成免费| 99久久99久久精品国产| 亚洲人成无码网站久久99热国产 | 人妻少妇久久中文字幕一区二区| 久久夜色精品国产噜噜麻豆| 久久久九九有精品国产| 久久露脸国产精品| 日韩人妻无码精品久久久不卡| 亚洲国产天堂久久综合网站| 性做久久久久久免费观看| 伊人久久大香线蕉av一区| 久久精品国产WWW456C0M| 久久人与动人物a级毛片|