日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 人工智能 > 循环神经网络 >内容正文

循环神经网络

matlab6.0序列号,MFC软件获取USB设备的制造商、产品、序列号

發(fā)布時(shí)間:2024/9/27 循环神经网络 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 matlab6.0序列号,MFC软件获取USB设备的制造商、产品、序列号 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

PVOID buf = malloc(100);

char * buf1 = (char *)malloc(100);

PVOID buf2 = malloc(100);

char * buf3 = (char *)malloc(100);

PVOID buf4 = malloc(100);

char * buf5 = (char *)malloc(100);

int num = 0;

int num1 = 0;

int num2 = 0;

PHIDD_ATTRIBUTES a;

UpdateData(false); //更新界面

int Count = 0; //Total number of devices found

DWORD strSize=0,requiredSize=0;

BOOL result1,result2;

//定義一些變量,以后會(huì)用到

SP_DEVINFO_DATA DeviceInfoData;

SP_DEVICE_INTERFACE_DATA??DeviceInterfaceData;

PSP_DEVICE_INTERFACE_DETAIL_DATA DeviceInterfaceDetailData;

//第一步:獲取deviceID

GUID deviceId;

HidD_GetHidGuid(&deviceId);

//第二步:獲取設(shè)備信息

HDEVINFO handle;

handle = SetupDiGetClassDevs(&deviceId, NULL, NULL, (DIGCF_DEVICEINTERFACE | DIGCF_PRESENT)); //Get only HID devices

//第三步:對(duì)所有的設(shè)備進(jìn)行枚舉

result1=false; //定義一些變量

result2=false;

CString temp11="";

while(1)

{

DeviceInterfaceData.cbSize = sizeof(SP_DEVICE_INTERFACE_DATA);

result1 = SetupDiEnumDeviceInterfaces(

handle,

NULL, // IN PSP_DEVINFO_DATA??DeviceInfoData,??OPTIONAL

&deviceId,

Count,

&DeviceInterfaceData

);

if(result1 == FALSE)

{

break;

}

//獲得設(shè)備詳細(xì)數(shù)據(jù)(初步)

result1 = SetupDiGetDeviceInterfaceDetail(handle,

&DeviceInterfaceData,

NULL,

0,

&strSize,

NULL);

requiredSize=strSize;

DeviceInterfaceDetailData=(PSP_DEVICE_INTERFACE_DETAIL_DATA)malloc(requiredSize);

DeviceInterfaceDetailData->cbSize=sizeof(SP_DEVICE_INTERFACE_DETAIL_DATA);

DeviceInfoData.cbSize=sizeof(SP_DEVINFO_DATA);

//再次獲得詳細(xì)數(shù)據(jù)

SetupDiGetDeviceInterfaceDetail(handle,

&DeviceInterfaceData,

DeviceInterfaceDetailData,

strSize,

&requiredSize,

&DeviceInfoData);

//獲得設(shè)備路徑(最重要的部分)

//m_zf1=DeviceInterfaceDetailData->DevicePath;

UpdateData(false);

Count++;

}

if(Count != 0)

{

//AfxMessageBox("進(jìn)來(lái)了");

a = (PHIDD_ATTRIBUTES)malloc(100);

a->Size = sizeof(struct _HIDD_ATTRIBUTES);

HANDLE hCom = CreateFile(DeviceInterfaceDetailData->DevicePath,

NULL,//GENERIC_READ | GENERIC_WRITE,

FILE_SHARE_READ | FILE_SHARE_WRITE,

NULL,

OPEN_EXISTING,

FILE_FLAG_OVERLAPPED,

NULL);

if (hCom == INVALID_HANDLE_VALUE)

{

AfxMessageBox("無(wú)效句柄!");

}

HidD_GetAttributes(hCom,a);

//m_sz1 = a->VendorID;

result2 = HidD_GetManufacturerString(hCom,buf,100);

if(result2 == FALSE)

{

AfxMessageBox("失敗!");

}

result2 = HidD_GetProductString(hCom,buf2,100);

if(result2 == FALSE)

{

AfxMessageBox("失敗!");

}

result2 = HidD_GetSerialNumberString(hCom,buf4,100);

if(result2 == FALSE)

{

AfxMessageBox("失敗!");

}

while(1)

{

if(buf1[num-1] != '\0')

{

if(num == 0)

{

sprintf(buf1,"%s",(char *)buf);

}

else

{

sprintf(buf1,"%s%s",buf1,(char *)buf + (2*num));

}

num++;

}

else

{

break;

}

}

while(1)

{

if(buf3[num1-1] != '\0')

{

if(num1 == 0)

{

sprintf(buf3,"%s",(char *)buf2);

}

else

{

sprintf(buf3,"%s%s",buf3,(char *)buf2 + (2*num1));

}

num1++;

}

else

{

break;

}

}

while(1)

{

if(buf5[num2-1] == '\0')

{

if(num2 == 0)

{

sprintf(buf5,"%s",(char *)buf4);

}

else

{

sprintf(buf5,"%s%s",buf5,(char *)buf4 + (2*num1));

}

num2++;

}

else

{

if(num2 == 0)

{

buf5 = "Not specified";

}

break;

}

}

m_zf1 = buf1;

m_zf2 = buf3;

m_zf3 = buf5;

}

UpdateData(false);

總結(jié)

以上是生活随笔為你收集整理的matlab6.0序列号,MFC软件获取USB设备的制造商、产品、序列号的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。