From 5c33d8e1c0bcf8beaaadaadb7d66b87369883d45 Mon Sep 17 00:00:00 2001 From: rust3028 Date: Sat, 22 Oct 2016 12:43:40 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A0=D0=B5=D0=B0=D0=BB=D0=B8=D0=B7=D0=BE?= =?UTF-8?q?=D0=B2=D0=B0=D0=BD=D0=BE=20=D0=B0=D0=B2=D1=82=D0=BE=D0=BE=D0=BF?= =?UTF-8?q?=D1=80=D0=B5=D0=B4=D0=B5=D0=BB=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=BF?= =?UTF-8?q?=D0=BE=D1=80=D1=82=D0=B0=20=D0=B0=D0=B2=D0=B0=D1=80.=20=D0=B7?= =?UTF-8?q?=D0=B0=D0=B3=D1=80=D1=83=D0=B7=D0=BA=D0=B8=20=D0=B2=20=D0=B2?= =?UTF-8?q?=D0=B5=D1=80=D1=81=D0=B8=D0=B8=20=D0=BF=D0=BE=D0=B4=20Windows?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- balong-usbdload.c | 75 +++++++++++++++++++++++++-- winbuild/Release/balong_usbdload.exe | Bin 92672 -> 94208 bytes 2 files changed, 71 insertions(+), 4 deletions(-) diff --git a/balong-usbdload.c b/balong-usbdload.c index fad8670..48927c4 100644 --- a/balong-usbdload.c +++ b/balong-usbdload.c @@ -17,6 +17,7 @@ #else //%%%% #include +#include #include "getopt.h" #include "printf.h" #endif @@ -205,7 +206,62 @@ for(off=(size-8);off>0;off--) { return 0; } +#ifdef WIN32 + +DEFINE_GUID(GUID_DEVCLASS_PORTS, 0x4D36E978, 0xE325, 0x11CE, 0xBF, 0xC1, 0x08, 0x00, 0x2B, 0xE1, 0x03, 0x18); + +static int find_port(int* port_no) +{ + HDEVINFO device_info_set; + DWORD member_index = 0; + SP_DEVINFO_DATA device_info_data; + DWORD reg_data_type; + char property_buffer[256]; + DWORD required_size; + char* p; + int result = 1; + + device_info_set = SetupDiGetClassDevs(&GUID_DEVCLASS_PORTS, NULL, 0, DIGCF_PRESENT); + + if (device_info_set == INVALID_HANDLE_VALUE) + return result; + + while (TRUE) + { + ZeroMemory(&device_info_data, sizeof(SP_DEVINFO_DATA)); + device_info_data.cbSize = sizeof(SP_DEVINFO_DATA); + + if (!SetupDiEnumDeviceInfo(device_info_set, member_index, &device_info_data)) + break; + + member_index++; + + if (!SetupDiGetDeviceRegistryPropertyA(device_info_set, &device_info_data, SPDRP_HARDWAREID, + ®_data_type, (PBYTE)property_buffer, sizeof(property_buffer), &required_size)) + continue; + + if (strstr(_strupr(property_buffer), "VID_12D1&PID_1443") != NULL) + { + if (SetupDiGetDeviceRegistryPropertyA(device_info_set, &device_info_data, SPDRP_FRIENDLYNAME, + ®_data_type, (PBYTE)property_buffer, sizeof(property_buffer), &required_size)) + { + p = strstr(property_buffer, " (COM"); + if (p != NULL) + { + *port_no = atoi(p + 5); + result = 0; + } + } + break; + } + } + SetupDiDestroyDeviceInfoList(device_info_set); + + return result; +} + +#endif //@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@ -245,6 +301,7 @@ unsigned char devname[50]="/dev/ttyUSB0"; #else char devname[50]=""; DWORD bytes_written, bytes_read; +int port_no; #endif #ifndef WIN32 @@ -316,7 +373,7 @@ printf("\n Утилита предназначена для аварийной U } } -printf("\n Аварийный USB-загрузчик Balong-чипсета, версия 2.01, (c) forth32, 2015"); +printf("\n Аварийный USB-загрузчик Balong-чипсета, версия 2.02, (c) forth32, 2015"); #ifdef WIN32 printf("\n Порт для Windows 32bit (c) rust3028, 2016"); #endif @@ -429,7 +486,7 @@ for(bl=0;bl<2;bl++) { } // Удаление процедуры flash_eraseall if (!cflag) { - res=pv7r2(blk[bl].pbuf, blk[bl].size)+pv7r11(blk[bl].pbuf, blk[bl].size)+pv7r1(blk[bl].pbuf, blk[bl].size); + res=pv7r2(blk[bl].pbuf, blk[bl].size)+pv7r11(blk[bl].pbuf, blk[bl].size); if (res != 0) printf("\n\n * Удалена процедура flash_eraseal по смещению %08x",res); } @@ -441,8 +498,18 @@ for(bl=0;bl<2;bl++) { #ifdef WIN32 if (*devname == '\0') { - printf("\n - Последовательный порт не задан\n"); - return; + printf("\n\nПоиск порта...\n"); + + if (find_port(&port_no) == 0) + { + sprintf(devname, "%d", port_no); + printf("Порт: COM%s\n", devname); + } + else + { + printf("Порт не обнаружен!\n"); + return; + } } #endif diff --git a/winbuild/Release/balong_usbdload.exe b/winbuild/Release/balong_usbdload.exe index b4f1f347985ee1c87167c989547dea790bf990c5..e9e739a63f13a4ebde24a1ccc892a8e5bf818df9 100644 GIT binary patch delta 34956 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