阅读:1552回复:5
急!急!急!能否开发一个client driver 对另一个驱动程序进行调用?(详情请进,多多给分!!)
各位大虾:
我正开发一个程序,要是实现的目标如下: 我有一个网卡驱动程序---完全好用,我现在想另外开发一个驱动,此驱动向原来的网卡驱动发送 irp(IRP_MN_QUERY_INTERFACE),来获得网卡所用总线的接口(interface) , 我设想用IoGetDeviceObjectPointer()例程 取得原网卡驱动的DeviceObject,给IoCallDriver()用, 用 IoCallDriver(DeviceObject,irp)调用网卡, 各位大虾,我的设想可行否?我老板崔的急,我怕设想不对耽误时间!! |
|
|
沙发#
发布于:2003-02-18 16:49
可以。只要保证那个驱动会处理你的IRP就行了
|
|
|
板凳#
发布于:2003-02-18 16:53
何必那么麻烦?把你得网卡驱动程序设置成为EXPORT_DRIVER,然后加一个.DEF文件(跟dll的一样),在别的驱动里面生命一下函数原型,把EXPORT_DRIVER生成的库文件连接进去就可以了。
|
|
地板#
发布于:2003-02-18 18:21
re :fracker
我的目的是利用interface routine:去控制总线上的寄存器, 我不太明白你的意思,能详细给解释一下吗? re :mikeluo ndis 驱动没有device object ,(我的代码还没coding完,但今天我看到了一点线索) |
|
|
地下室#
发布于:2003-02-19 09:42
可以用NdisMRegisterDevice注册一个device
|
|
|
5楼#
发布于:2003-02-19 11:47
re: mikeluo
但注册后,我向网卡驱动发的irp,必须得再由我为miniport写派遣函数来转发IRP_MN_QUERY_INTERFACE给总线驱动,这就太...... |
|
|