前一阵儿写的driver需要管理员权限才能打开,否则CreateFile的时候返回Error Code:5, Access Denied。解决方法如下:
http://msdn.microsoft.com/en-us/library/windows/hardware/gg487483.aspx
在ClassInstall里面的Addreg里面需要添加类似如下代码:
HKR,,,0,%ClassName%
HKR,,Icon,,-5
HKR,,DeviceCharacteristics,0x10001,0x100 ;Use same security checks on relative opens
HKR,,Security,,"D:P(A;;GA;;;SY)(A;;GA;;;BA)(A;;GA;;;WD)"
此外记得,所有涉及ClassInstall的操作,windows先会查询Class是否存在,如果存在新的inf里面的信息不会更新到系统中。所以删除Driver后,需要手动在注册表中删除原来的Class,或者使用新的ClassGUID