新聞中心

        EEPW首頁 > 模擬技術 > 設計應用 > Windows設備驅動程序編寫時的主要問題及解決方案

        Windows設備驅動程序編寫時的主要問題及解決方案

        作者: 時間:2012-04-18 來源:網絡 收藏
        驅動程序中,使用如下的語句就可以打開文件。
        hVxD=CreateFile("\\.\PCIBIOS.VXD",0,0,0, CREATE-NEW,FILE-FLAG-DELETE-ON-CLOSE,0); 打開設備文件后,調用DeviceIoControl函數就可以同設備驅動程序交換數據了。
        完成硬件操作之后,可以調用CloseHandle(hVxD);關閉設備驅動。
        這種調用方式也是Windows NT調用設備驅動的標準方法。對于VxD來說還有其它的調用方式,如DPMI方式,但采用DeviceIoControl的方法可以保證程序在Windows NT和Windows 9X下的兼容性,在兩個操作系統下,僅有CreateFile語句是不同的。
        4 設備驅動的進一步封裝 至此,完成了對驅動程序的初步設計。但考慮到在上面調用設備驅動時使用的DeviceIoControl函數仍是比較復雜的,程序也不太容易具有通用性。而且,在有些開發工具中,如Visual Basic,不包括直接讀寫I/O端口的語句,所以可以考慮根據不同軟件的需要對驅動程序進行不同的封裝。目前,我們實現了以DLL、ActiveX、VCL和C++類庫進行封裝。DLL可以在大多數軟件環境中進行調用。ActiveX可以在Visual Basic等可視編程環境中使用。VCL可以在Delphi和C++ Builder中使用。考慮到許多用戶使用Visual C++,所以也提供了C++類庫方式。
        參考文獻
        1 馬衛國,何佩琨.通用高速PCI總線目標模塊的設計.電子技術應用,1999;25(1)
        2 Art Baker.Windows NT設備驅動程序設計指南.北京:機械工業出版社,1997
        3 AMCC S5933 PCI Controller Data Book.Applied Micro Circuits Corporation,1996 ? (收稿日期:1999-06-16)

        模擬電路文章專題:模擬電路基礎

        c++相關文章:c++教程



        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 临桂县| 桃园县| 万山特区| 江门市| 舟山市| 龙里县| 嘉荫县| 重庆市| 莲花县| 永修县| 滕州市| 长寿区| 鄂托克前旗| 保山市| 扶风县| 论坛| 宣城市| 龙泉市| 阿拉善右旗| 巴南区| 普宁市| 泗阳县| 辉南县| 墨脱县| 云浮市| 忻州市| 韩城市| 屏南县| 察隅县| 浦城县| 雅安市| 东辽县| 黄梅县| 阿克陶县| 舒城县| 东阿县| 德保县| 镇原县| 乌兰浩特市| 宝丰县| 台山市|