91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 240KB
    文件類(lèi)型: .rar
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2021-06-06
  • 語(yǔ)言: C/C++
  • 標(biāo)簽: USB通訊??windows??VID,PID??

資源簡(jiǎn)介

資源中包含USB通訊類(lèi),Win32測(cè)試程序,以及MFC界面測(cè)試程序,使用簡(jiǎn)單,vs2015開(kāi)發(fā)

資源截圖

代碼片段和文件信息

#include?“CommUsb.h“
#include?

CommUsb::CommUsb()
{
m_rBuffer[64]?=?{?0?};
m_handle?=?NULL;
m_size?=?0;
m_dwResult?=?0;
}

CommUsb::~CommUsb()
{

}

void?CommUsb::ReadThread(CommUsb?*usb)
{
ReadFile(usb->m_handle?usb->m_rBuffer?usb->m_size?&usb->m_dwResult?NULL);
}

BOOL?CommUsb::DeviceOpen(HANDLE&handle?WORD?wVID?WORD?wPID)
{

BOOL?bRet?=?FALSE;
GUID?hidGuid;
HDEVINFO?hardwareDeviceInfo;
SP_INTERFACE_DEVICE_DATA?deviceInfoData;
PSP_INTERFACE_DEVICE_DETAIL_DATA?functionClassDeviceData?=?NULL;
ULONG?predictedLength?=?0;
ULONG?requiredLength?=?0;
CloseHandle(handle);
handle?=?INVALID_HANDLE_VALUE;
deviceInfoData.cbSize?=?sizeof(SP_INTERFACE_DEVICE_DATA);
HidD_GetHidGuid(&hidGuid);
hardwareDeviceInfo?=?SetupDiGetClassDevs(&hidGuid?NULL?NULL?(DIGCF_PRESENT?|?DIGCF_DEVICEINTERFACE));
for?(int?i?=?0;?i? {
if?(!SetupDiEnumDeviceInterfaces(hardwareDeviceInfo?0?&hidGuid?i?&deviceInfoData))?continue;
SetupDiGetDeviceInterfaceDetail(hardwareDeviceInfo?&deviceInfoData?NULL?0?&requiredLength?NULL);
predictedLength?=?requiredLength;
functionClassDeviceData?=?(PSP_INTERFACE_DEVICE_DETAIL_DATA)malloc(predictedLength);
if?(!functionClassDeviceData)?continue;
functionClassDeviceData->cbSize?=?sizeof(SP_INTERFACE_DEVICE_DETAIL_DATA);
if?(!SetupDiGetDeviceInterfaceDetail(hardwareDeviceInfo?&deviceInfoData?functionClassDeviceData?predictedLength?&requiredLength?NULL))?break;
handle?=?CreateFile(functionClassDeviceData->DevicePath?GENERIC_READ?|?GENERIC_WRITE?0?NULL?OPEN_EXISTING?0?NULL);//???倒數(shù)第二個(gè)參數(shù)可以指定為異步FILE_FLAG_OVERLAPPED???0為同步
//?cout?<<“devicePath“<DevicePath< if?(handle?!=?INVALID_HANDLE_VALUE)
{
HIDD_ATTRIBUTES?attri;
HidD_GetAttributes(handle?&attri);
if?((attri.VendorID?==?wVID)?&&?(attri.ProductID?==?wPID))
{

m_handle?=?handle;???//將USB設(shè)備句柄存入類(lèi)成員變量
bRet?=?TRUE;
break;
}
CloseHandle(handle);
handle?=?INVALID_HANDLE_VALUE;
}


}
SetupDiDestroyDeviceInfoList(hardwareDeviceInfo);
return?bRet;
}

void?CommUsb::DeviceClose()
{

CloseHandle(m_handle);

m_handle?=?INVALID_HANDLE_VALUE;
}

BOOL?CommUsb::DeviceWrite(LPCVOID?lpBuffer?DWORD?dwSize)
{
if?(m_handle?==?INVALID_HANDLE_VALUE)
{
//MessageBox(NULL“數(shù)據(jù)寫(xiě)入失敗““失敗!“MB_OK);
return?0;
}

DWORD?dwRet;
BOOL?bRet;

PHIDP_PREPARSED_DATA?PreparsedData;
HIDP_CAPS?Capabilities;

HidD_GetPreparsedData(m_handle?&PreparsedData);
HidP_GetCaps(PreparsedData?&Capabilities);

m_rBuffer[0]?=?0x00;??//第一個(gè)字節(jié)為report?Id不能省略

memcpy(m_rBuffer?+?1?lpBuffer?min(20?dwSize));

//這里寫(xiě)的長(zhǎng)度要大于Capabilities.OutputReportByteLength

bRet?=?WriteFile(m_handle?m_rBuffer?Capabilities.OutputReportByteLength?&dwRet?NULL);
if?(bRet)
{
//MessageBox(NULL“寫(xiě)入數(shù)據(jù)成功““成功!“MB_OK);
}
return?bRet;
}

void?CommUsb::Devi

?屬性????????????大小?????日期????時(shí)間???名稱(chēng)
-----------?---------??----------?-----??----

?????文件???????3820??2020-08-20?17:54??Project1\common\CommUsb.cpp

?????文件????????735??2020-08-20?17:39??Project1\common\CommUsb.h

?????文件??????61440??2020-08-20?17:59??Project1\Debug\Project1.exe

?????文件?????238080??2020-08-21?11:47??Project1\Debug\USBMfcTest.exe

?????文件????????748??2020-08-20?17:59??Project1\Project1\main.cpp

?????文件???????6168??2020-08-19?17:00??Project1\Project1\Project1.vcxproj

?????文件???????1176??2020-08-19?17:00??Project1\Project1\Project1.vcxproj.filters

?????文件????????165??2020-08-18?17:27??Project1\Project1\Project1.vcxproj.user

?????文件???????5076??2020-08-18?19:28??Project1\Project1\USBTest.cpp

?????文件???????2067??2020-08-19?16:58??Project1\Project1.sln

?????文件???????4093??2020-08-19?16:45??Project1\USBMfcTest\ReadMe.txt

?????文件??????67777??2015-09-20?17:20??Project1\USBMfcTest\res\USBMfcTest.ico

?????文件????????676??2020-08-19?16:45??Project1\USBMfcTest\res\USBMfcTest.rc2

?????文件???????2066??2020-08-20?10:15??Project1\USBMfcTest\resource.h

?????文件????????143??2020-08-19?16:45??Project1\USBMfcTest\stdafx.cpp

?????文件???????1578??2020-08-19?16:45??Project1\USBMfcTest\stdafx.h

?????文件????????240??2020-08-19?16:45??Project1\USBMfcTest\targetver.h

?????文件?????109684??2020-08-21?11:45??Project1\USBMfcTest\USBMfcTest.aps

?????文件???????2472??2020-08-19?16:45??Project1\USBMfcTest\USBMfcTest.cpp

?????文件????????467??2020-08-19?16:45??Project1\USBMfcTest\USBMfcTest.h

?????文件??????12112??2020-08-21?11:45??Project1\USBMfcTest\USBMfcTest.rc

?????文件??????10779??2020-08-20?09:18??Project1\USBMfcTest\USBMfcTest.vcxproj

?????文件???????2276??2020-08-19?17:02??Project1\USBMfcTest\USBMfcTest.vcxproj.filters

?????文件????????165??2020-08-19?17:04??Project1\USBMfcTest\USBMfcTest.vcxproj.user

?????文件???????6611??2020-08-21?11:47??Project1\USBMfcTest\USBMfcTestDlg.cpp

?????文件???????1081??2020-08-20?14:02??Project1\USBMfcTest\USBMfcTestDlg.h

?????目錄??????????0??2020-08-21?11:50??Project1\USBMfcTest\res

?????目錄??????????0??2020-08-21?11:50??Project1\common

?????目錄??????????0??2020-08-21?11:51??Project1\Debug

?????目錄??????????0??2020-08-21?11:51??Project1\Project1

............此處省略5個(gè)文件信息

評(píng)論

共有 條評(píng)論

相關(guān)資源