题
我需要创建一个模拟装置,该装置中不存在的WDM驱动程序。驾驶员需要在O / S靴,打开和经由SetupDiXXX
和CreateFile
关闭被加载,需要应对DeviceIoControl
等
我有驾驶员编码,但XP拒绝加载它。系统事件查看器表示:
在mydevice在服务未能 由于以下错误启动: 服务不能启动,可能是 因为它被禁用或者是因为它 与相关设备没有启动 它
<强>鉴于这种情况,我认为这个问题是在INF文件(下面参考)。是吗?我应该如何去修复它?
;; MyDevice.inf [Version] Signature="$Windows 95$" Class=MyDeviceDeviceClass ClassGUID={ff646f80-8def-11d2-9449-00105a075f6b} Provider=%ProviderName% DriverVer= 12/21/2009,1.0.0.1 [ClassInstall32] Addreg=Class_AddReg [Class_AddReg] HKR,,,,%DeviceClassName% HKR,,Icon,,"-18" [DestinationDirs] MyDevice_Files_Driver = 10,System32\Drivers [Manufacturer] %MfgName%=Mfg0 [Mfg0] %DeviceDesc%=MyDevice_DDI, *MyDevice [MyDevice_DDI] CopyFiles=MyDevice_Files_Driver AddReg=MyDevice_9X_AddReg [MyDevice_DDI.NT] CopyFiles=MyDevice_Files_Driver AddReg=MyDevice_NT_AddReg [MyDevice_DDI.NT.Services] Addservice = MyDevice, 0x00000002, MyDevice_AddService [MyDevice_AddService] DisplayName = %SvcDesc% ServiceType = 1 StartType = 3 ErrorControl = 1 ServiceBinary = %10%\System32\Drivers\MyDevice.sys [MyDevice_NT_AddReg] HKLM, "System\CurrentControlSet\Services\MyDevice\Parameters","BreakOnEntry", 0x00010001, 0 [MyDevice_Files_Driver] MyDevice.sys [Strings] ProviderName="Acme" MfgName="Acme" DeviceDesc="Acme" DeviceClassName="Device class for MyDevice" SvcDesc="MyDevice NT service"
解决方案
自回答:
我改变了INF以包括以下内容:
[Mfg0] %DeviceDesc%= MyDevice_DDI,* mydevice在\ IPM1
在“\ IPM1”是新的,在我的眼睛有点巫术。我从克里斯广东话的“写作的Windows WDM设备Drvers”的一个例子得到了它。
大的变化是使用从控制面板“添加新硬件”向导安装驱动程序。右键单击安装INF是不够的。我怀疑原因是,它调用PnP管理其正确未能找到硬件为驾驶者控制。
不隶属于 StackOverflow