qweasdzxc
驱动牛犊
驱动牛犊
  • 注册日期2003-07-14
  • 最后登录2005-12-13
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1568回复:7

usb应用程序

楼主#
更多 发布于:2003-08-14 10:50
请问设计USB应用程序,直接写全部源代码需要用到哪几个API函数,哪位大侠写过应用程序请教教我。
jinghuiren
驱动巨牛
驱动巨牛
  • 注册日期2002-06-01
  • 最后登录2008-10-27
  • 粉丝0
  • 关注0
  • 积分291分
  • 威望460点
  • 贡献值0点
  • 好评度428点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-08-14 11:38
1,如果你的设备有固定的文件名,比如驱动里用ezusb-0作为设备名,用CreatFile(),如果是基于guid的文件名,就用
SetupDiGetClassDevs(),SetupDiEnumDeviceInterfaces(),SetupDiGetDeviceInterfaceDetail(),SetupDiGetDeviceInterfaceDetail(),获得设备名,然后再用CreatFile()打开设备。

2,ReadFile()、WriteFile() 或者 DeviceIoControl(),
就这么多,其它的都跟usb无关了。

[编辑 -  8/14/03 by  jinghuiren]
flytomoon
驱动巨牛
驱动巨牛
  • 注册日期2003-07-09
  • 最后登录2004-10-18
  • 粉丝1
  • 关注1
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-08-14 11:46
1,如果你的设备有固定的文件名,用CreatFile(),否则用
SetupDiGetClassDevs(),SetupDiEnumDeviceInterfaces(),SetupDiGetDeviceInterfaceDetail(),SetupDiGetDeviceInterfaceDetail(),获得设备名,然后再用CreatFile()打开设备。

2,ReadFile()、WriteFile() 或者 DeviceIoControl(),
就这么多,其它的都跟usb无关了。



ReadFile()、WriteFile() 或者 DeviceIoControl()这几个最常用了!
lioniamhero
驱动小牛
驱动小牛
  • 注册日期2003-05-31
  • 最后登录2005-10-27
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-08-14 12:32
1,如果你的设备有固定的文件名,用CreatFile(),否则用
SetupDiGetClassDevs(),SetupDiEnumDeviceInterfaces(),SetupDiGetDeviceInterfaceDetail(),SetupDiGetDeviceInterfaceDetail(),获得设备名,然后再用CreatFile()打开设备。

2,ReadFile()、WriteFile() 或者 DeviceIoControl(),
就这么多,其它的都跟usb无关了。

  设备固定文件名是不是GUID呢,什么时候在INF文件里要GUID呢。
 
  不在郁闷中成长,就在郁闷中毁灭。
jinghuiren
驱动巨牛
驱动巨牛
  • 注册日期2002-06-01
  • 最后登录2008-10-27
  • 粉丝0
  • 关注0
  • 积分291分
  • 威望460点
  • 贡献值0点
  • 好评度428点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-08-14 12:51
我之前没说清楚,又改了一下,你在看看第2贴。
qweasdzxc
驱动牛犊
驱动牛犊
  • 注册日期2003-07-14
  • 最后登录2005-12-13
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-08-14 19:00
谢谢jinghuiren,flytomoon两位大哥!
Always!978
驱动小牛
驱动小牛
  • 注册日期2002-05-09
  • 最后登录2005-04-12
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-08-18 16:48
1,如果你的设备有固定的文件名,比如驱动里用ezusb-0作为设备名,用CreatFile(),如果是基于guid的文件名,就用
SetupDiGetClassDevs(),SetupDiEnumDeviceInterfaces(),SetupDiGetDeviceInterfaceDetail(),SetupDiGetDeviceInterfaceDetail(),获得设备名,然后再用CreatFile()打开设备。

2,ReadFile()、WriteFile() 或者 DeviceIoControl(),
就这么多,其它的都跟usb无关了。

[编辑 -  8/14/03 by  jinghuiren]


常用的还应该有个waitforobject()吧,毕竟Wdm不同于Vxd,不能发送数据给应用程序。
Tomorrow Never Die
jinghuiren
驱动巨牛
驱动巨牛
  • 注册日期2002-06-01
  • 最后登录2008-10-27
  • 粉丝0
  • 关注0
  • 积分291分
  • 威望460点
  • 贡献值0点
  • 好评度428点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2003-08-18 18:30
呵呵,这个有的时候会用到,如果是同步操作就用不到了。
游客

返回顶部