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

            任我行

            一天一個(gè)腳印......
            每日一句:
            posts - 54, comments - 218, trackbacks - 1, articles - 0
              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

            因?yàn)槲覍W(xué)習(xí)的時(shí)候是在win2000下進(jìn)行的,所以一切以我學(xué)習(xí)時(shí)的配置為準(zhǔn)。

            第一:安裝win2000操作系統(tǒng),我安裝是win2000高級服務(wù)器版本。

            第二:安裝Vc++6.0,我裝的是英文版。

            第三:安裝win2000DDK;

            通常驅(qū)動(dòng)程序的調(diào)試都是用ddk在cmd中完成的。這部分我暫時(shí)略過。下面先介紹如何設(shè)置vc++6.0在Visual Studio 6.0集成環(huán)境中開發(fā)設(shè)備驅(qū)動(dòng)程序的方法。

            在Windows上,Windows DDK提供的開發(fā)環(huán)境是基于命令行的,操作起來極為不便,而Visual Studio 6.0給我們提供了非常友好易用的集成環(huán)境,讓我們有如虎添翼之感。 
              那么,能否利用Visual Studio的集成環(huán)境來開發(fā)驅(qū)動(dòng)程序呢?答案是可以的。通過對Visual Studio集成環(huán)境的簡單設(shè)置,創(chuàng)建好自己的驅(qū)動(dòng)開發(fā)集成環(huán)境就可以了。

            首先要求系統(tǒng)已安裝DDK和Visual C++6.0(安裝時(shí)選上所有工具),

            1、接下來需要改造ddk\bin\setenv.bat 把要求mstools的有關(guān)語句注釋掉(若想在命令行環(huán)境開發(fā)驅(qū)動(dòng)則還需加入call VC_DIR\VC98\Bin\Vcvars32. bat),以便能在命令行使用vc的相關(guān)工具;若只想在IDE環(huán)境開發(fā)就不必調(diào)用Vcvars32.bat,因?yàn)橄嚓P(guān)工具的路徑信息可以在vc環(huán)境中設(shè)置.) 

            2、創(chuàng)建一個(gè)目錄DriverEnv(目錄名隨意),作為你開發(fā)驅(qū)動(dòng)的大本營 

            3、在該目錄下創(chuàng)建一個(gè)批處理文件MakeDrvr.bat,內(nèi)容如下:

            @echo off 
            if "%1"=="" goto usage 
            if "%3"=="" goto usage 
            if not exist %1\bin\setenv.bat goto usage 
            call %1\bin\setenv %1 %4 
            %2 

            cd %3 
            build -b -w %5 %6 %7 %8 %9 

            goto exit 

            :usage 
            echo usage MakeDrvr DDK_dir Driver_Drive Driver_Dir free/checked [build_options]echo eg MakeDrvr %%DDKROOT%% C: %%WDMBOOK%% free -cef 
            :exit 


            該批處理首先對傳遞的參數(shù)作一些檢查,然后調(diào)用ddk的setenv命令設(shè)置環(huán)境變量,然后改變目錄為源程序所在驅(qū)動(dòng)器和目錄,并最后調(diào)用build,-b保證顯示完全的錯(cuò)誤信息,-w保證在屏幕上輸出警告,在vc ide里的output窗口中可以看到這些錯(cuò)誤和警告。

            4.建立一個(gè)空白工程 
            選File的new菜單項(xiàng),然后選project欄的makefile,然后輸入路徑,一路next下去即可,visual studio提供兩種配置win32 debug和win32 release. 

            5.修改這兩種配置 
              選project的settings菜單項(xiàng)win32 debug: 
              在Build Command Line一欄填入MakeDrvr DDK_DIR SOURCE_DRIVE SOURCE_DIR checked [build options] 
              在Rebuild all options一欄填入 -nmake /a 
              在output file一欄填入與sources文件中的TARGETNAME相同的文件名 
              在Browse info file name一欄填入obj\i386\checked\(與TARGETNAME相同的文件名,見下述).bsc 

              win32 release: 
              在Build Command Line一欄填入MakeDrvr DDK_DIR SOURCE_DRIVE SOURCE_DIR free [build options] 
              在Rebuild all options一欄填入 -nmake /a 
              在output file一欄填入與sources文件中的TARGETNAME相同的文件名 
              在Browse info file name一欄填入obj\i386\free\(與TARGETNAME相同的文件名).bsc 
              注:DDK_DIR一般可以寫成%BASEDIR%,build options一般為-cef即已足夠 

            6.添加源文件到工程 
              可以新建,也可以添加,這和普通的win32開發(fā)一樣。 

            7.添加資源文件 
              選INSERT的RESOURCE菜單項(xiàng)即可 

            8.把文件makefile放入源程序目錄,其內(nèi)容總是 

            # DO NOT EDIT THIS FILE!!! Edit .\sources. if you want to add a new source 
            # file to this component. This file merely indirects to the real make file 
            # that is shared by all the driver components of the Windows NT DDK 


            !INCLUDE $(NTMAKEENV)\makefile.def 

            9.把文件Sources放入源程序目錄,內(nèi)容為 
              TARGETNAME=RamDrive//這是要生成的驅(qū)動(dòng)程序.sys文件的名字 
              TARGETPATH=obj //.sys文件所在目錄的上層目錄,(由于ddk的bug)應(yīng)手工在obj目錄下創(chuàng)建checked和free目錄,以作為.sys的最終存放目錄 
              TARGETTYPE=DRIVER //驅(qū)動(dòng)程序的類型,一般不變 
              INCLUDES=$(BASEDIR)\inc //ddk包含文件路徑,一般不變 
              SOURCES=RamDrive.cpp RamDrive.rc //源文件(不要頭文件),資源文件 
              BROWSER_INFO = 1 //若想要瀏覽信息,則要有本行;否則可無 

            10.因?yàn)镸akeDrvr.bat在DriverEnv目錄,所以應(yīng)把該目錄添加到vc的Executable files里面 
              選tools的options菜單項(xiàng),然后選directories頁,在show directories for一欄選擇Executable files,然后添加即可. 

              至此,環(huán)境設(shè)置完畢,你可以按F7, build你的驅(qū)動(dòng)程序了。

            Feedback

            # re: 驅(qū)動(dòng)程序開發(fā)—工具篇   回復(fù)  更多評論   

            2007-11-14 16:49 by 4kapple
            倒,看了這篇文章的發(fā)表日期,06年1月~
            我現(xiàn)在都用vista系統(tǒng)了,開發(fā)環(huán)境換成了vs2005(c++.net)+driverstudio3.2,我該怎么做呢?
            久久精品人人做人人爽97| 久久中文骚妇内射| 精品久久久久成人码免费动漫 | 久久黄视频| 久久男人Av资源网站无码软件 | 国产激情久久久久久熟女老人| 精品久久久噜噜噜久久久| 久久久久国色AV免费看图片| 日韩AV无码久久一区二区| 国产香蕉97碰碰久久人人| 国内精品伊人久久久久av一坑 | 中文字幕日本人妻久久久免费| 久久精品国产亚洲一区二区| 久久精品人妻中文系列| 国产精品xxxx国产喷水亚洲国产精品无码久久一区 | 久久国产综合精品五月天| 性做久久久久久久| 亚洲精品无码久久毛片| 激情综合色综合久久综合| 久久99热国产这有精品| 久久久久亚洲AV无码麻豆| 少妇熟女久久综合网色欲| 久久精品一区二区三区中文字幕| 99久久国产热无码精品免费| 香蕉久久夜色精品升级完成| 久久综合亚洲色一区二区三区| 亚洲?V乱码久久精品蜜桃 | 久久精品99久久香蕉国产色戒| 亚洲精品tv久久久久久久久久| 久久久中文字幕日本| 精品久久久久久久中文字幕| 久久精品国产亚洲沈樵| 久久99国产精品久久久| 久久精品人人做人人爽电影| 99久久免费国产特黄| 狠狠色丁香久久婷婷综| 久久99国产精品久久99| 久久精品无码一区二区三区免费 | 一级做a爰片久久毛片人呢| 狠狠精品久久久无码中文字幕 | 国产成人精品久久亚洲高清不卡 |