欢迎来到天天文库
浏览记录
ID:24353600
大小:51.00 KB
页数:3页
时间:2018-11-13
《基于visual c#的usb接口通信程序设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、基于VisualC#的USB接口通信程序设计摘要:详细介绍了USB接口的特点以及接口通信流程,研究在MicrosoftVisualStudio2008环境下,运用VisualC#调用portAttribute特性来引入api函数 publicstaticexternvoidHidD_GetHidGuid(refGuidHidGuid); GuidguidHID=Guid.Empty; GUID结构体声明如下: typedefstructGUID{ longData1; shartData2; shartData3; charData4 }; 3.3获取已经连接的HI
2、D信息结构体数组 HidD_GetHidGuid使得应用程序获得一个系统的HID信息GUID,然后调用setupDiGetclassDevs函数,将上一步获得到的GUID结构作为参数传入,将返回一个包含所有已连接并检测通过的HID,该值包含其信息的结构数组的地址,它在下一个将要调用的函数SetupDiEnumDevicelnterfaces中将使用到。下面是C#调用API函数获得HID信息 [DllImport("setupapi.dll",SetLastError=true)] publicstaticexternIntPtrSetupDiGetClassDevs(refGui
3、dClassGuid,uintEnumerator,IntPtrHDeviceInterfaces函数,每一次调用可以获得设备信息集中一个设备接口的信息: SetupDiEnumDevicelnterfaces( DevlnfoSet,//设备信息集句柄 NULL,//获得设备信息集中所有接口的信息 &HIDGUID,//HID类设备GUID结构体的地址 HIDlndex,//以0开始的接口索引号 &DevlnterfaceData//设备接口数据结构体的地址 ); 下面为C#调用API函数识别HID接口获取设备,当返回值为true时获取成功, [DllImport(
4、"setupapi.dll",CharSet=CharSet.Auto,SetLastError=true)] publicstaticexternBooleanSetupDiEnumDeviceInterfaces(IntPtrhDevInfo,IntPtrdevInfo,refGuidinterfaceClassGuid,UInt32memberIndex,refSP_DEVICE_INTERFACE_DATAdeviceInterfaceData); publicstructSP_DEVICE_INTERFACE_DATA { publicintcbSize;
此文档下载收益归作者所有