亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? usbdrv.cpp

?? 全是好東西啊 歡迎觀看,共勉,加油啊
?? CPP
字號:
#include "stdafx.h"

#include <setupapi.h>
#include <basetyps.h>

//#include "usb.h"

DEFINE_GUID(GUID_DFU_BOOSTER, 
0x93c7ae0a, 0xf32d, 0x4061, 0x80, 0x6f, 0x22, 0x81, 0x84, 0xb7, 0xbc, 0x67);

#define NOISY(_x_) MessageBox(NULL, _x_ , "ERROR", MB_OK);

HANDLE openFile(IN LPGUID pGuid, IN PCHAR pFileName)
{
	HANDLE hOut = INVALID_HANDLE_VALUE; /* Resulting Handle */

	HDEVINFO                         hardwareDeviceInfo;
	SP_INTERFACE_DEVICE_DATA         deviceInfoData;
	PSP_INTERFACE_DEVICE_DETAIL_DATA deviceDetailData;

	PCHAR completeFileName;
	DWORD nbBytes; /* Nb of bytes to allocate for deviceDetailData */

	/* Open Device information */
	hardwareDeviceInfo = SetupDiGetClassDevs(
                           pGuid,
                           NULL, // Define no enumerator (global)
                           NULL, // Define no
                           (DIGCF_PRESENT | // Only Devices present
                            DIGCF_INTERFACEDEVICE)); // Function class devices.

	if (hardwareDeviceInfo == INVALID_HANDLE_VALUE) {
		NOISY("Failed to open USB");
		return hOut;
	}

	/* Perform enumeration */
	deviceInfoData.cbSize = sizeof (SP_INTERFACE_DEVICE_DATA);

	if (!SetupDiEnumDeviceInterfaces (hardwareDeviceInfo,
                          NULL, // We don't care about specific PDOs
						  pGuid,
                          0,
                          &deviceInfoData)) {
       	NOISY("Can not open interface");
        return hOut;
	}


	/* Get detailed information about the device */
	SetupDiGetInterfaceDeviceDetail(hardwareDeviceInfo, &deviceInfoData, NULL, 0, &nbBytes, NULL);
	deviceDetailData = (PSP_INTERFACE_DEVICE_DETAIL_DATA) malloc (nbBytes);
	if (!deviceDetailData) {
		NOISY("Failed to get memory for interface detail");
		SetupDiDestroyDeviceInfoList(hardwareDeviceInfo);
		return hOut;
	}
	deviceDetailData->cbSize = sizeof (SP_INTERFACE_DEVICE_DETAIL_DATA);
	if (!SetupDiGetInterfaceDeviceDetail(
		hardwareDeviceInfo, &deviceInfoData, deviceDetailData, nbBytes, NULL, NULL)) {
		NOISY("Failed getting interface detail");
		free(deviceDetailData);
		SetupDiDestroyDeviceInfoList(hardwareDeviceInfo);
		return hOut;
	}

	/* Build the completeFileName */
	if (pFileName)
		completeFileName = (PCHAR) malloc(strlen(deviceDetailData->DevicePath) + strlen(pFileName) + 2);
	else
		completeFileName = (PCHAR) malloc(strlen(deviceDetailData->DevicePath) + 1);
	if (!completeFileName) {
		NOISY("Failed to get memory for completeFileName");
		free(deviceDetailData);
		SetupDiDestroyDeviceInfoList(hardwareDeviceInfo);
		return hOut;
	}
	if (pFileName)
		sprintf(completeFileName, "%s\\%s", deviceDetailData->DevicePath, pFileName);
	else
		strcpy(completeFileName, deviceDetailData->DevicePath);

	/* Open file */
	hOut =  CreateFile (
                  completeFileName,
                  GENERIC_READ | GENERIC_WRITE,
                  FILE_SHARE_READ | FILE_SHARE_WRITE,
                  NULL, // no SECURITY_ATTRIBUTES structure
                  OPEN_EXISTING, // No special create flags
                  0, // No special attributes
                  NULL); // No template file

	/* Free ressources */
	free(completeFileName);
	free(deviceDetailData);
	SetupDiDestroyDeviceInfoList(hardwareDeviceInfo);
	return hOut;
}


ULONG Usb_Download(BYTE * const buffer, ULONG bufferSize)
{
	HANDLE pFile = openFile((LPGUID) &GUID_DFU_BOOSTER, NULL);
	ULONG   bytesWritten = 0;

	if (pFile == INVALID_HANDLE_VALUE) {
		MessageBox(NULL, "Can not open USB device", "ERROR", MB_OK);
		return 0;
	}

	if ( !WriteFile(pFile, buffer, bufferSize, &bytesWritten, NULL) )
		MessageBox(NULL, "Failed to download code", "ERROR", MB_OK);

	CloseHandle( pFile );
	return bufferSize;
}

ULONG Usb_Upload(BYTE *buffer, ULONG bufferSize)
{
	HANDLE pFile = openFile((LPGUID) &GUID_DFU_BOOSTER, NULL);
	ULONG   nbBytesRead;

	if (pFile == INVALID_HANDLE_VALUE) {
		MessageBox(NULL, "Can not open USB device", "ERROR", MB_OK);
		return 0;
	}

	if ( !ReadFile(pFile, buffer, bufferSize, &nbBytesRead, NULL) )
		MessageBox(NULL, "Failed to upload code", "ERROR", MB_OK);

	CloseHandle( pFile );
	return nbBytesRead;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
激情五月婷婷综合| 视频一区欧美日韩| 日韩欧美成人激情| 欧美一级在线免费| 中文字幕亚洲一区二区va在线| 日韩写真欧美这视频| 日韩丝袜情趣美女图片| 91精品国产综合久久久蜜臀粉嫩| 欧美三区在线观看| 91精品久久久久久久99蜜桃| 欧美一二三四区在线| 精品久久久久久无| 欧美激情一区二区三区| 国产精品久久久久久亚洲伦 | 亚洲精品成人悠悠色影视| 国产精品嫩草99a| 国产精品动漫网站| 亚洲综合久久av| 成人精品在线视频观看| 北条麻妃国产九九精品视频| 91性感美女视频| 欧美日韩成人在线一区| www国产精品av| 成人免费一区二区三区视频| 亚洲一区二区在线免费观看视频| 日韩成人dvd| 福利一区二区在线| 日本福利一区二区| 日韩欧美成人一区二区| 亚洲欧美综合在线精品| 丝袜诱惑制服诱惑色一区在线观看| 美女www一区二区| 成人午夜av电影| 欧美日韩国产成人在线91| 亚洲永久精品大片| 久久电影网站中文字幕| 99精品欧美一区二区三区综合在线| 欧洲av一区二区嗯嗯嗯啊| 欧美成人女星排名| 亚洲一区二区欧美| 成人免费视频一区| 欧美一区午夜视频在线观看| 国产精品久久久久久久久久免费看 | 国产精品五月天| 亚洲成av人片在线| 欧美群妇大交群的观看方式| 中文字幕 久热精品 视频在线| 一区二区三区中文字幕| 国产综合色精品一区二区三区| 一本大道久久a久久精二百| 欧美成人性战久久| 午夜精品久久久久久久久久久| 久久国产麻豆精品| 欧美午夜理伦三级在线观看| 久久婷婷国产综合国色天香 | 污片在线观看一区二区| 成人美女视频在线看| 91精品国产综合久久精品app| 日本一区二区高清| 国产一区二区三区免费观看| 久久精品亚洲精品国产欧美kt∨| 一区二区三区欧美久久| 99久久久免费精品国产一区二区 | 国产精品你懂的| 国产呦精品一区二区三区网站| 欧美中文字幕一区| 一区二区三区日韩精品视频| www.99精品| 国产精品美女久久久久久| 国产99久久久国产精品免费看| 精品日本一线二线三线不卡| 午夜久久久影院| 在线观看视频一区二区| 综合久久久久久久| 成人高清视频在线观看| 日一区二区三区| 色噜噜夜夜夜综合网| 亚洲欧洲av在线| 成人深夜在线观看| 中文字幕在线观看一区| 东方aⅴ免费观看久久av| 久久久久久久久久久久久久久99| 日韩电影在线观看电影| 91精品国产丝袜白色高跟鞋| 天天操天天干天天综合网| 欧美日韩免费高清一区色橹橹 | 国产精品久久久一区麻豆最新章节| 老司机午夜精品| 午夜激情久久久| 欧美系列日韩一区| 午夜成人在线视频| 欧美大片在线观看一区二区| 国产在线播精品第三| 国产女主播一区| 91免费视频网址| 一区二区三区视频在线看| 欧美天堂一区二区三区| 日本欧美在线观看| 久久精品在线观看| 色综合天天在线| 日韩精品一二区| 久久亚洲综合色| 色偷偷一区二区三区| 视频一区视频二区在线观看| 久久婷婷国产综合精品青草| 成人在线视频首页| k8久久久一区二区三区| 亚洲视频图片小说| 欧美一区二视频| 福利视频网站一区二区三区| 亚洲综合视频网| 精品久久国产老人久久综合| 成人99免费视频| 三级久久三级久久| 国产精品久久久久久久久免费桃花 | 亚洲国产一二三| 精品99999| 久久精品无码一区二区三区| 欧日韩精品视频| 成人少妇影院yyyy| 久久精品国产**网站演员| 日韩美女啊v在线免费观看| 欧美一级专区免费大片| 色综合久久天天| 国产在线精品免费| 亚洲成人第一页| 国产精品久久久久aaaa| 精品入口麻豆88视频| 在线观看亚洲精品视频| 国产精品正在播放| 日韩精品一级中文字幕精品视频免费观看 | 成人午夜在线视频| 日韩成人免费看| 有码一区二区三区| 欧美激情综合在线| 欧美大胆一级视频| 欧美女孩性生活视频| 91麻豆自制传媒国产之光| 国产精品99久久久| 狠狠久久亚洲欧美| 久久99最新地址| 免费在线观看视频一区| 午夜精品久久久久久| 亚洲精品v日韩精品| 国产精品乱码久久久久久| 久久影院视频免费| 久久综合一区二区| 久久综合狠狠综合久久激情| 日韩精品最新网址| 日韩精品在线看片z| 亚洲午夜三级在线| 亚洲最大成人综合| 亚洲综合另类小说| 亚洲一区二区三区美女| 亚洲综合男人的天堂| 一区二区三区欧美在线观看| 亚洲欧美日韩成人高清在线一区| 一区免费观看视频| 亚洲乱码中文字幕综合| 一区二区国产盗摄色噜噜| 夜夜亚洲天天久久| 亚洲成人在线观看视频| 亚洲6080在线| 青青草国产精品亚洲专区无| 日产精品久久久久久久性色| 三级不卡在线观看| 久久99最新地址| 处破女av一区二区| 91麻豆精品视频| 欧美人xxxx| 久久久久久久久岛国免费| 国产日韩成人精品| 亚洲卡通动漫在线| 三级精品在线观看| 久久福利资源站| 懂色av中文一区二区三区| 色婷婷av一区二区三区大白胸| 欧美综合一区二区三区| 欧美成人激情免费网| 国产欧美精品一区aⅴ影院| 亚洲乱码国产乱码精品精的特点| 亚洲成人动漫在线免费观看| 国内精品视频666| 欧美久久一区二区| 精品人在线二区三区| 中文字幕在线不卡视频| 亚洲一区在线观看视频| 麻豆国产欧美一区二区三区| 豆国产96在线|亚洲| 欧美男同性恋视频网站| 中文字幕av不卡| 日本不卡高清视频| 不卡电影免费在线播放一区| 欧美日韩一区三区四区| 国产色产综合色产在线视频| 午夜激情久久久| 91色综合久久久久婷婷| 久久婷婷色综合| 日本sm残虐另类| 色婷婷av一区二区|