一,hello 驱动!

一,工具准备

 

1,WinDBG

2,DbgView

3,WDK

4,驱动加载工具

5,虚拟机软件

6,下载symbols 微软官网搜(symbols)

 

二,虚拟机环境配置

1,安装XP操作系统

2,为虚拟机添加串口  //./pipe/com_1

3,配置boot.ini文件,最后行加入以下代码:

multi(0)disk(0)rdisk(0)partition(1)/WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect /debug /debugport=com1 /baudrate=115200

 

三,配置WinDbg

1,在WinDbg目录内,选中WinDbg.exe创建快捷方式->快捷方式上右键属性->目标处windbg.exe后面加入以下代码:

注意事项:此快捷方式为双机调式用!

2,设置WinDbg符号文件路径,打开WinDbg.exe->文件->符号文件路径->输入symbols的安装路径

 

四,编写下一个hello 驱动程序,以做测试

1,创建一个DriverHello.c的文本文件,复制以下代码:

 

2,创建文件名为makefile及sources的两个文本文件,贴入如下代码:

 //makefile

###########以下为贴入代码############################

!ifdef NTMAKEENV

# DO NOT EDIT THIS FILE!!!  Edit ./joycpl.inc. if you want to add a new
# source file to this component.  This file merely indirects to the
# build environment specific common make file.

!INCLUDE $(NTMAKEENV)/makefile.def

!else

# Win 95
#

ROOT    =..
WIN32   =TRUE
!include ../../build.mk

!endif

########################################

 

 

//sources文件

###########以下为贴入代码##########################

!IF 0

Copyright (c) 1989 - 2000 Microsoft Corporation


!ENDIF

LINKER_STACKSIZE=-STACK:4096,1024

# Compile for Win95 for widest compatibility
CHICAGO_PRODUCT=1
WIN32_IE_VERSION=0x0300

UMTYPE=windows

TARGETNAME=DriverHello
TARGETPATH=obj
TARGETTYPE=DRIVER
SOURCES=DriverHello.c

 

 

五,编译

1,安装过WDK后,可以在开始菜单程序中找到

windows xp checked build Environment

Windows XP Free Build Environment

以上两项

2,选择checked(相当于VC内的DEBUG模式)进入到传说中的黑屏白字窗口.

3,用DOS命令更改当前路径为你的DriverHello的工程目录下。

4,输入build

5,查看执行后的提示,确认无错,可以到工程目录内,找到一个DriverHello.sys文件。

 

六,本地调试

1,打开DbgView.exe ,以等待输出调试信息。

2,打开驱动加载工具,加载DriverHello.sys文件->启动->停止->卸载  依次观察输出.

 

 

七,双机调试

1,修改源代码,加入断点如下所示:

 

2,起动配置好的XP虚拟机环境,(虚环境内需要驱动加载工具)-->启动选择调试模式->黑屏,等待下面这一步。

3,打开Windbg.exe(刚建立的快捷方式),连接正常会有提示,看命令窗口中的命令行,输入g以让虚拟机正常运行。

 

4,虚拟机运行正常,打开驱动加载工具,加载->启动->停止->卸载 以观察Windbg.exe内的输出信息等。

 

 

一个Hello 驱动就这吧!!!欢迎各位驱动爱好者一起讨论软件驱动的相关问题!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值