| 
			 
					阅读:3573回复:10
				 
				驱动程序如何相互调用???
					请教各位大虾,如何实现两个WDM驱动程序的相互调用,就象两个DLL调用一样???
 
							 | 
	|
					
						
						
						
						
  | 
	
| 
			 沙发# 
								发布于:2001-05-22 09:38				
			
					首先我们要注意这样一个问题:
 
							驱动程序是全局性的系统部件,一个驱动程序是可以看见别的驱动程序的。请大家仔细看一看2000DDK中的鼠标类驱动程序与鼠标功能驱动程序,鼠标类驱动程序(mouclass)提供给鼠标功能驱动程序的回调函数,鼠标功能驱动程序直接调用了鼠标类驱动程序(mouclass)提供的函数!! 驱动程序调用的方式有: ①使用别的驱动程序提供的调用接口服务,调用发声驱动beep.sys如何实现? ②直接调用对方,如前面提到的鼠标类驱动程序和鼠标功能驱动程序! 有事多交流!  | 
	|
| 
			 板凳# 
								发布于:2001-05-22 08:57				
			
					[QUOTE]原本由 LitteSW 发表
 
							[B]我看Driver Work帮助中的How to Send a Request to Another Device时,有个问题看不明白。 I.IoctlCode(NEXT) = IOCTL_SERIAL_GET_BAUD_RATE; 这句是指我自定义的IOCTL码。 I.MajorFunction(NEXT) = IRP_MJ_DEVICE_CONTROL; 是否是指被调用驱动程序中的DeviceControl成员函数? [/B][/QUOTE] 1.yes 2.是一个IRP,发给接受调用的driver,这里就是Device Io Control的处理函数.  | 
	|
					
						
  | 
	
| 
			 地板# 
								发布于:2001-05-15 15:33				
			
					具体点说是IoCreateDevice()的第三个参数,是个PUNICODE_STRING,其实是向NT的对象管理器汇报了一个对象,有了这个名字,其余内核态的组件就有可能通过对象管理器找到这个驱动				 
							 | 
	|
| 
			 地下室# 
								发布于:2001-05-15 09:43				
			
					只要你的驱动被命名,就有被调用的可能				 
							 | 
	|
| 
			 5楼# 
								发布于:2001-05-14 18:17				
			
					Internal Device Io Control啊!				 
							 | 
	|
					
						
  | 
	
| 
			 6楼# 
								发布于:2001-04-25 11:18				
			
					那样的话,应该是不能被别的driver调用的。因为驱动之间的调用要实现internal device io control,而且IOCTL CODE也要对应起来。				 
							 | 
	|
					
						
  | 
	
| 
			 7楼# 
								发布于:2001-04-25 10:29				
			
					如果被调用的驱动程序是别人开发的,没有准备被调用,那它还能不能被调用?
 
							SORRY,听起来象绕口令,也就是说,一个驱动程序要怎样做才能被调用?  | 
	|
| 
			 8楼# 
								发布于:2001-04-19 08:35				
			
					I don't think so. I've ever called a USB driver within a smartcard driver. They are not attached to the same device stack (I think so).
 
							I think the upper drvice can send IRPs to the lower device to communicate with it.  | 
	|
					
						
  | 
	
| 
			 9楼# 
								发布于:2001-04-16 16:53				
			
					KLowerDevice				 
							 | 
	|
					
						
  | 
	
| 
			 10楼# 
								发布于:2001-04-09 10:21				
			
					Use CallDriver				 
							 | 
	|
					
						
  |