阅读:1189回复:1
为什么API调用自己写的驱动程序可以,调用HID类驱动程序就不可以呢?
我的设备是一个HID类设备,现在要写一个应用程序进行控制.程序如下:
us421.cpp // us421.cpp : Defines the entry point for the console application. #include \"stdafx.h\" #include \"windows.h\" #include \"stdio.h\" #include \"winioctl.h\" #include \"iostream.h\" char completeDeviceName[256]=\"\\\\\\\\?\\\\usb#vid_0557&pid_2404#5&d4ccdbd&0&2#{36fc9e60-c465-11cf-8056-444553540000}\\\\PIPE00\"; int main(int argc, char* argv[]) { HANDLE h; h = CreateFile(completeDeviceName, GENERIC_WRITE | GENERIC_READ, FILE_SHARE_WRITE | FILE_SHARE_READ, NULL, OPEN_EXISTING, // FILE_FLAG_OVERLAPPED, 0, NULL); if (INVALID_HANDLE_VALUE==h){ printf(\"error\\n\"); }else{ printf(\"ok\\n\"); } CloseHandle(h); return 0; } 默认情况下,设备需要安装驱动,但是上面的程序显示:error,后来把PDIUSBD12套件的驱动程序修改了下GUID,并安装到我的设备,上面的API调用显示: ok ? 这是为什么? 即使我把上面程序的 36fc9e60-c465-11cf-8056-444553540000 改为Hid类也没有用? 请指点! [编辑 - 2/24/05 by czcty] [编辑 - 2/24/05 by czcty] |
|
沙发#
发布于:2005-05-17 16:33
HID类USB好像只有控制传输
去掉pipe00试一试 |
|