阅读:634回复:1
用向导生产的驱动程序调试有问题
小弟是刚学习驱动不到一周,直接用驱动向导生成了一个驱动,调试就有问题,不知道是否有什么地方需要进行设置
以下是代码,就是直接生产的。 HANDLE OpenByInterface( GUID* pClassGuid, // points to the GUID that identifies the interface class DWORD instance, // specifies which instance of the enumerated devices to open PDWORD pError // address of variable to receive error status ) { HANDLE hDev; CDeviceInterfaceClass DevClass(pClassGuid, pError); if (*pError != ERROR_SUCCESS) return INVALID_HANDLE_VALUE; CDeviceInterface DevInterface(&DevClass, 0, pError); if (*pError != ERROR_SUCCESS) return INVALID_HANDLE_VALUE; hDev = CreateFile( DevInterface.DevicePath(), GENERIC_READ | GENERIC_WRITE, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL ); if (hDev == INVALID_HANDLE_VALUE) *pError = GetLastError(); return hDev; } 当单步调试的时候,每当执行了语句 CDeviceInterface DevInterface(&DevClass, 0, pError); 紧接着的判断 if (*pError != ERROR_SUCCESS) 后就会执行推出语句 return INVALID_HANDLE_VALUE; 不明白为什么? 希望各位大哥,高手们帮小弟一把。 顺便问一下给分是怎么回事,对这个网站还一无所知 |
|
沙发#
发布于:2004-11-13 09:03
打开设备出错,可以用查看GetLastError()得到错误原因
sys有没有拷贝到system32\\driver下? |
|
|