Попытка использовать загрузчик F4X DFU

Rogerclark
Пт 25 ноября 2016 г., 6:39
С нетерпением жду возможности появиться дополнительные устройства серии STM32F4, я пытаюсь использовать встроенный загрузчик в F4, который является USB DFU

Я нашел здесь код

https: // my.ул.com/public/ste2ecommuniti ... ntviews = 33
#define VECT_TAB_OFFSET 0x0 /*!< Vector Table base offset field. This value must be a multiple of 0x200. */

Деван
Пт 25 ноября 2016 г. 8:32 утра
Части STM32 Используйте версию DFU с некоторыми пользовательскими расширениями, которые они называют DFUSE. Протокол укладывает некоторые дополнительные команды поверх существующих команд DFU, чтобы делать дополнительные вещи, такие как указание адреса начала на Flash.

DFU-UTIL имеет дополнительные команды для обработки устройств DFUSE:
http: // dfu-util.Sourceforge.net/dfuse.HTML

Добавление -s 0x08000000: уход должен сделать трюк, я.E: #define VECT_TAB_OFFSET 0x0 /*!< Vector Table base offset field. This value must be a multiple of 0x200. */

Rogerclark
Пт 25 ноября 2016 г. 8:54 утра
@devan

Спасибо, но это не сработало :-(

Я скачал бинар W64 для DFU-UTIL 0.9 от Sourceforge,
и попробовал
#!/bin/bash set -e if [ $# -lt 4 ]; then echo "Usage: $0 $# " >&2 exit 1 fi dummy_port=$1; altID=$2; usbID=$3; binfile=$4;dummy_port_fullpath="/dev/$1" #if we can find the Serial device try resetting it and then sleeping for 1 sec while the board reboots if [ -e $dummy_port_fullpath ]; then echo "resetting " $dummy_port_fullpath echo “1EAF” > $dummy_port_fullpath sleep 1 fi DFU_UTIL=$(dirname $0)/dfu_util/dfu-util if [ ! -x ${DFU_UTIL} ]; then echo "$0: error: cannot find ${DFU_UTIL}" >&2 exit 2 fi ${DFU_UTIL} -d ${usbID} -a ${altID} -s 0x08000000:leave -D ${binfile}

AG123
Пн 28 ноября 2016 г., 17:06
@Роджер
Ты получил меня достаточно любопытно/взволнован, чтобы привлечь плату STM32F407, которую я получил на некоторое время, но спрятал ее и собирает пыль :ржу не могу:
https: // www.Олимекс.com/products/arm/st/ ... E-Hardware

Olimex запрограммировал плату так, чтобы, если я загружаюсь в нормальную вспышку, доска имулирует мышь root@my_computer:~# echo -e "Hello" |hd 00000000 48 65 6c 6c 6f 0a |Hello.| 00000006 root@my_computer:~# echo -n "Hello" |hd 00000000 48 65 6c 6c 6f |Hello| 00000005 root@my_computer:~# echo -n "Hello\r" |hd 00000000 48 65 6c 6c 6f 5c 72 |Hello\r| 00000007 root@my_computer:~# echo -n "Hello\n" |hd 00000000 48 65 6c 6c 6f 5c 6e |Hello\n| 00000007 root@my_computer:~# echo "Hello\n" |hd 00000000 48 65 6c 6c 6f 5c 6e 0a |Hello\n.| 00000008 root@my_computer:~# echo "Hello\r" |hd 00000000 48 65 6c 6c 6f 5c 72 0a |Hello\r.| 00000008 root@my_computer:~# echo -e "Hello\r" |hd 00000000 48 65 6c 6c 6f 0d 0a |Hello..| 00000007 root@my_computer:~# echo -e "Hello\n" |hd 00000000 48 65 6c 6c 6f 0a 0a |Hello..| 00000007 root@my_computer:~#

Rogerclark
Пн 28 ноября 2016 г., 20:53
@AG123

У моего доски USB -разъема на PA11 и PA12, как F103.

Если я включите Boot0, я получаю устройство USB DFU, поэтому я использовал установщик LIBWDI, который мы используем, или Maple DFU, чтобы заставить Windows установить драйвер.

Я получаю тот же список, если я попробую dfu -util -list

Но я все еще не могу загрузить.

Я загрузил эскиз, используя Stlink, и если я назову Usbeserial.Начните, я могу получить USB -устройство, но PID и VID, кажется, появляются как «Virtual Com STM с FS».

Мне нужно проверить ядро, чтобы понять, почему оно, кажется, использует STMS VID и PID, или я действительно запутал свой компьютер, когда я тестировал некоторые композитные USB -материалы для @Danieleff, и моя машина может быть в некоторой степени запутана с писками и драйверами в данный момент.

Я не пытался подключить USB OTG, но у меня есть открытие STM, которое, я думаю, имеет порт OTG, подключенный к USB.

Но поскольку эти доски F407 сейчас стоят менее 10 долларов США, я думаю, что их купит гораздо больше людей.

Кстати. Я опубликовал в другую ветку о досках F407, что, как я ожидаю, мы в конечном итоге сделаем нашу собственную версию F4 STMS Core, так как прошли месяцы с тех пор, как они выпустили F1 и L4, и мы, вероятно, сможем получить что -то, прежде чем они смогут ;-)

(Не то чтобы это помогает с загрузкой..)

AG123
Вт 29 ноября 2016 г., 7:07
@Роджер

Очевидно, STM32F407 имеет 2 набора контроллеров хоста USB OTG, на моем плате по причинам, которые я не знаю, он использует (я.эн. перечисляется при загрузке) один порт PA 9, 11, 12 для DFU (по -видимому, это полный скорость USB -порт) (он перечисляет только этот порт для DFU), в то время как другой, PA 13, 14, 15 (это, очевидно, высокая скорость USB -порт) (он перечисляет только этот порт для приложения), когда приложение работает от Flash

Схема доски, которую я здесь
https: // www.Олимекс.com/products/arm/st/ ... _B_SCH.PDF
https: // www.Олимекс.com/products/arm/st/ ... E-Hardware

Я наблюдаю за аналогичным VID/PID для «приложения», которое установлено Olimex, у него есть видео STM #!/bin/bash set -e if [ $# -lt 4 ]; then echo "Usage: $0 $# " >&2 exit 1 fi dummy_port=$1; altID=$2; usbID=$3; binfile=$4;dummy_port_fullpath="/dev/$1" #if we can find the Serial device try resetting it and then sleeping for 1 sec while the board reboots if [ -e $dummy_port_fullpath ]; then echo "resetting " $dummy_port_fullpath echo “1EAF” > $dummy_port_fullpath sleep 1 fi DFU_UTIL=$(dirname $0)/dfu_util/dfu-util if [ ! -x ${DFU_UTIL} ]; then echo "$0: error: cannot find ${DFU_UTIL}" >&2 exit 2 fi ${DFU_UTIL} -d ${usbID} -a ${altID} -s 0x08000000:leave -D ${binfile}

Rogerclark
Вт 29 ноября 2016 г. 7:17 утра
@AG123

Я только что посмотрел в коде, и по какой -то причине видео и пид
#define VECT_TAB_OFFSET 0x0 /*!< Vector Table base offset field. This value must be a multiple of 0x200. */

AG123
Вт 29 ноября 2016 г., 7:31
@Роджер
Я тоже запускаю Linux, но потом другой большой подстановка - это ПК & Сам USB -кабель :ржу не могу:

& На STM32, похоже, STM может быть заинтересована в присоединении к мини-ПК «Революции», для того, что стоит, мы можем 1 день (скоро) увидеть совет STM, «конкурирующую» с R-Pi & Биглборды :ржу не могу:

Даниэфф
Вт 29 ноября 2016 г. 8:10
Попробуйте использовать -v (несколько раз для повышения условности) с DFU -UTIL, чтобы получить больше информации.

Rogerclark
Вт 29 ноября 2016 г. 8:38 утра
Даниэфф написал:Попробуйте использовать -v (несколько раз для повышения условности) с DFU -UTIL, чтобы получить больше информации.

AG123
Вт 29 ноября 2016 г. 9:14
в моем случае

В случае с ошибкой if (r == CDC_SET_LINE_CODING) { USBDevice.recvControl((void*)&_usbLineInfo, 7); } if (r == CDC_SET_CONTROL_LINE_STATE) { _usbLineInfo.lineState = setup.wValueL; } if (r == CDC_SET_LINE_CODING || r == CDC_SET_CONTROL_LINE_STATE) { // auto-reset into the bootloader is triggered when the port, already // open at 1200 bps, is closed. We check DTR state to determine if host // port is open (bit 0 of lineState). if (_usbLineInfo.dwDTERate == 1200 && (_usbLineInfo.lineState & 0x01) == 0) { initiateReset(250); } else { cancelReset(); } return false; }

AG123
Вт 29 ноября 2016 г. 9:32 утра
Rogerclark написал:Даниэфф написал:Попробуйте использовать -v (несколько раз для повышения условности) с DFU -UTIL, чтобы получить больше информации.

Rogerclark
Вт 29 ноября 2016 г., 9:41
Похоже, что STM, возможно, не внедрила их DFU, чтобы соответствовать спецификации

Rogerclark
Вт 29 ноября 2016 г. 9:44
Я нашел это на сайте Partice

https: // Сообщество.частица.io/t/tutoria ... -2015/3518

Я попробовал версию, с которой ссылается статья, но это было хуже, чем версии, которые я уже пробовал.


Но я уверен, что идет Zadiag, и устанавливает ли он другой драйвер, чем либусб, который я использую

AG123
Вт 29 ноября 2016 г. 10:03
@Роджер

Я думаю, что вы можете попробовать приложение DFU Update от STM, так как вы запускаете Windows
http: // www.ул.com/en/development-tools/ ... 32080.HTML

Если S/W работает S/W, в то время как DFU-UTIL не может указывать на проблему с программным обеспечением в самом DFU-UTIL.

Rogerclark
Вт 29 ноября 2016 г. 10:33 утра
Кажется, я не узнаю свое устройство DFU.

Я попытался найти драйвер ST для их устройства DFU, но не смог его найти.

AG123
Вт 29 ноября 2016 г. 12:20 вечера
Получил новый * экранированный * USB -кабель, лучшие USB -кабели сделали мир разницы, больше не ошибок :ржу не могу:
int UARTClass::read( void ) { // if the head isn't ahead of the tail, we don't have any characters if ( rx_buffer.iHead == rx_buffer.iTail ) return -1; uint8_t uc = rx_buffer.buffer[rx_buffer.iTail]; rx_buffer.iTail = (unsigned int)(rx_buffer.iTail + 1) % SERIAL_BUFFER_SIZE; return uc; }

AG123
Вт 29 ноября 2016 г. 12:26
вытащил вспышку в файл в качестве резервной копии
class UARTClass : public HardwareSerial { public: enum UARTParams { Param_8N1 = 0, //US_MR_CHRL_8_BIT | US_MR_NBSTOP_1_BIT | UART_MR_PAR_NO, Param_8E1, // = US_MR_CHRL_8_BIT | US_MR_NBSTOP_1_BIT | UART_MR_PAR_EVEN, Param_8O1, // = US_MR_CHRL_8_BIT | US_MR_NBSTOP_1_BIT | UART_MR_PAR_ODD, Param_8M1, // = US_MR_CHRL_8_BIT | US_MR_NBSTOP_1_BIT | UART_MR_PAR_MARK, Param_8S1 // = US_MR_CHRL_8_BIT | US_MR_NBSTOP_1_BIT | UART_MR_PAR_SPACE, }; enum UARTModes { Mode_Full_Duplex = 0, Mode_Half_Duplex }; enum UARTCtrl { Ctrl_Non_Blocking = 0, Ctrl_Blocking }; . . . void begin(const uint32_t dwBaudRate); void begin(const uint32_t dwBaudRate, const UARTParams param); void begin(const uint32_t dwBaudRate, const UARTModes mode); void begin(const uint32_t dwBaudRate, const UARTCtrl ctrl); void begin(const uint32_t dwBaudRate, const UARTParams param, const UARTCtrl ctrl); void begin(const uint32_t dwBaudRate, const UARTModes mode, const UARTCtrl ctrl); void begin(const uint32_t dwBaudRate, const UARTParams param, const UARTModes mode, const UARTCtrl ctrl); . . . uint8_t r_byte; uint8_t _mode; uint8_t _ctrl; ring_buffer tx_buffer;// = { { 0 }, 0, 0}; ring_buffer rx_buffer;// = { { 0 }, 0, 0}; };

Стивестронг
Вт 29 ноября 2016 г. 12:30
Роджер, ты пробовал этот?

Или Здесь у вас также есть 64 -битная демонстрация ОС, Несмотря на то, что он должен работать до Vista/Win7 (включая водителей), это может работать и для Win10, я еще не пробовал.

Grumpyoldpizza
Вт 29 ноября 2016 г. 12:56 вечера
Стивестронг написал:Роджер, ты пробовал этот?

Или Здесь у вас также есть 64 -битная демонстрация ОС, Несмотря на то, что он должен работать до Vista (включая водителей), это может работать и для Win10, я еще не пробовал.

Стивестронг
Вт 29 ноября 2016 г. 13:11
Grumpyoldpizza написал:...Труба его инструмента типа файлового менеджера ...

AG123
Вт 29 ноября 2016 г. 15:38
Rogerclark написал:Даниэфф написал:Попробуйте использовать -v (несколько раз для повышения условности) с DFU -UTIL, чтобы получить больше информации.

Rogerclark
Вт 29 ноября 2016 г., 19:08
Ммм.

Очень странно.

Я постараюсь вытащить основание транзистора сброса USB PNP, высокого, а также с ним, чтобы увидеть, поможет ли это.

AG123
Вт 29 ноября 2016 г., 22:03
Я не уверен, может ли это помочь, эта ссылка показывает еще один случай использования DFU-UTIL с STM32F407
Это, вероятно, довольно популярная доска STM32 F4 Discovery Board
Пример снова - Linux, хотя

https: // github.com/micropython/micropyt ... -Открытие

Очевидно, есть больше случаев с поиском в Google
https: // www.Google.компонент.sg/search?Q = STM3 ... Covery+dfu

Rogerclark
Вт 29 ноября 2016 г., 22:21
AG123 написал:Я не уверен, может ли это помочь, эта ссылка показывает еще один случай использования DFU-UTIL с STM32F407
Это, вероятно, довольно популярная доска STM32 F4 Discovery Board
Пример снова - Linux, хотя

https: // github.com/micropython/micropyt ... -Открытие

Очевидно, есть больше случаев с поиском в Google
https: // www.Google.компонент.sg/search?Q = STM3 ... Covery+dfu

AG123
Ср 30 ноября 2016 г., 4:55
@Роджер

Большое спасибо за мысли : D
Я бы потратил некоторое время, чтобы проверить DFU-UTIL в Windows. DFU-UTIL работает довольно хорошо в Linux с STM32F407, это включает в себя протоколы DFUSE STM, мои более ранние неприятности подтверждается, что это неисправный USB-кабель. Но из журналов dfu -util -v -v -v, которые вы опубликовали, по -видимому, это не проблема кабеля / оборудования. Причина в том, что установка, казалось, остановилась на определенном шаге, а сообщение журнала «Параметр неверный» может быть подсказкой.

Вместо указания dfu -util -s 0x08000000: уйти, вы можете попробовать DFU -UTIL -S 0x08000000 Вместо этого без этого: оставить

Окружающая среда Windows, возможно, сильно отличается от Linux, где проходят низкоуровневые программные интерфейсы USB, я не слишком уверен, по какой-то причине dfu-util i.эн. DFUSE не работал в Windows из -за интерфейсов USB S/W. Кроме того, я не слишком уверен, может ли у силового анализатора командной строки некоторые проблемы с: оставить в пункте «Оставь адреса».

Мои мысли с STM32F4XX заключаются в том, что, поскольку у них есть встроенный загрузочный загрузчик DFU или, скорее, мы могли бы сохранить некоторые (много) усилий от повторного выполнения загрузчика DFU для F4, по крайней мере для начала. И, кроме того, загрузчик может также потреблять (много?) меньше SRAM, если нам не нужны коды DFU.

AG123
Ср 30 ноября 2016 г., 5:24
Olimex, по -видимому, преуспел в реализации Arduino для серии STM32 F4X

Это показано на шагах в руководстве по правлению Глава 7 Стр. 22
https: // www.Олимекс.com/products/arm/st/ ... 2-H407.PDF
Они загрузили S/W в GitHub
https: // github.com/olimex/arduino_confi ... Мастер/STM

Я не пробовал это, и я не слишком уверен, что они также используют DFU-UTIL

Rogerclark
Ср 30 ноября 2016 г., 6:21
РЖУ НЕ МОГУ

Их загрузчик Arduino

https: // github.com/olimex/arduino_confi ... загрузить.молния

Просто застегнутая версия файлов в моем репо :ржу не могу:

Редактировать.

Похоже, большинство их файлов - это просто копии тех, кто в моем репо :ржу не могу: :ржу не могу: :ржу не могу:

Grumpyoldpizza
Ср 30 ноября 2016 г., 12:42
Для ядра STM32L4 мы используем по существу это здесь:

dfu -util -d 0483: df11 -a 0 -s 0x08000000: оставить -d flash.бин

Известно, что некоторые из DFU -имплеменций для STM32 (STM32L433 сильно поймали меня там). Вы можете проверить AN2606 на наличие проблем и ограничения вашего конкретного устройства. Пожалуйста, также убедитесь, что ваша платформа работает должным образом с помощью встроенного погрузчика (конфигурация часов не может быть поддержана вашей платой).

Резо с точки зрения источника, который мы используем https: // github.com/arduino/dfu-utils-cross. Там есть несколько исправлений, которые могут или не могут быть в официальном дереве источника.

Иногда время ожидания eRase_page, сообщаемое устройством, неверно ... Итак, вы можете взломать это до минимума 25 мс.

Пито
Ср 30 ноября 2016 г., 13:28
Похоже, большинство их файлов - это просто копии тех, кто в моем репо :ржу не могу: :ржу не могу: :ржу не могу: Синдром «Максимальный» :)

Стивестронг
Ср 30 ноября 2016 г. 13:44
Пито написал:Синдром «Максимальный» :)

Rogerclark
Ср 30 ноября 2016 г., 19:36
Grumpyoldpizza написал:Для ядра STM32L4 мы используем по существу это здесь:

dfu -util -d 0483: df11 -a 0 -s 0x08000000: оставить -d flash.бин

Известно, что некоторые из DFU -имплеменций для STM32 (STM32L433 сильно поймали меня там). Вы можете проверить AN2606 на наличие проблем и ограничения вашего конкретного устройства. Пожалуйста, также убедитесь, что ваша платформа работает должным образом с помощью встроенного погрузчика (конфигурация часов не может быть поддержана вашей платой).

Резо с точки зрения источника, который мы используем https: // github.com/arduino/dfu-utils-cross. Там есть несколько исправлений, которые могут или не могут быть в официальном дереве источника.

Иногда время ожидания eRase_page, сообщаемое устройством, неверно ... Итак, вы можете взломать это до минимума 25 мс.

Rogerclark
Ср 30 ноября 2016 г., 8:55 вечера
Grumpyoldpizza написал:Для ядра STM32L4 мы используем по существу это здесь:

dfu -util -d 0483: df11 -a 0 -s 0x08000000: оставить -d flash.бин

Известно, что некоторые из DFU -имплеменций для STM32 (STM32L433 сильно поймали меня там). Вы можете проверить AN2606 на наличие проблем и ограничения вашего конкретного устройства. Пожалуйста, также убедитесь, что ваша платформа работает должным образом с помощью встроенного погрузчика (конфигурация часов не может быть поддержана вашей платой).

Резо с точки зрения источника, который мы используем https: // github.com/arduino/dfu-utils-cross. Там есть несколько исправлений, которые могут или не могут быть в официальном дереве источника.

Иногда время ожидания eRase_page, сообщаемое устройством, неверно ... Итак, вы можете взломать это до минимума 25 мс.

Rogerclark
Ср 30 ноября 2016 г., 21:59
Я установил драйвер Libusb, который я настроил для F4 и повторно подключил плату, и потому что я также загрузил демонстрацию DFUSE в STM, кабан затем появился в диспетчере устройств Windows как «устройство STM в режиме DFU».

В этом режиме демо -графический интерфейс STM подключится к доске, и я смог загрузить содержимое Flash.

Однако DFUSE STM поддерживает только свой собственный формат файла, и вам нужно конвертировать .корзин .DFU, хотя и другой графический интерфейс


Поэтому я думаю, что использование внутреннего USB DFU в конечном итоге станет неработающим для большинства людей (у меня достаточно вопросов с нашим существующим загрузчиком, и это гораздо проще в использовании, что это было бы))

Деван
Чт, 01 декабря 2016 г. 2:13 утра
Вот еще одна точка данных:
Я тестировал с dfu-util 0.7 и последний dfu-util 0.9 на Windows 7 64-бит на плате Seeed Arch Max.

С Winusb (или Libusbk, так как я был установлен по какой -то причине), у меня не было проблем: typedef struct _Pin2PortMapArray { GPIO_TypeDef *GPIOx_Port; /* defined in stm32f401xe.h */ uint32_t Pin_abstraction; /* must match type in GPIO_InitTypeDef struct */ uint32_t adc_channel; uint32_t timerNumber; //Timer1 to Timer4. uint32_t timerChannel; //Timer channel (1-4). } Pin2PortMapArray;

AG123
Чт, 01 декабря 2016 г., 4:12
@Роджер
Только мои 2 цента, так как, по -видимому, собственная утилита DFUSE работает и установила эскиз, в такой степени, что он исключает аппаратную проблему.
и отмечая наблюдение @Девана «Конфликты драйвера» E.глин. По умолчанию STMICRO Driver, противоречащий Winusb, Lib-USB, DFU-UTIL Stack может быть возможной причиной проблемы.

Очевидно, в Windows все будет несколько сложнее управлять, так как казалось необходимым, чтобы увидеть, что программное обеспечение стекает:
1) winusb
эн.глин. от Microsoft
https: // msdn.Microsoft.com/en-us/librar ... с.85).aspx
2) Либусб
https: // sourceforge.net/p/libusb-win32/wiki/home/
http: // libusb.информация/
http: // libusb.орг/
3) DFU-UTIL
и
4) Настройки реестра для исправления VID / PID в соответствующий стек WinusB / Lib-USB / DFU-UTIL
https: // msdn.Microsoft.com/en-us/librar ... с.85).aspx
http: // zadig.Акео.т.е./
работают друг с другом и что они равномерно 32/64 бита и т. Д

Кроме того, также необходимо опасаться конфликтов драйверов, таких как драйвер STMICRO по умолчанию, исправленный в тот же VID/PID и т. Д

Пользователи Linux немного повезло, как обычно, USB USB ядра, Lib-USB и после этого DFU-UTIL, как правило, являются стеком по умолчанию

Rogerclark
Чт, 01 декабря 2016 г., 4:19 утра
Ребята

Я согласен, это почти наверняка проблема с водителем, так как у меня есть либо Libusb через Libwdi, либо драйвер St, ни один из которых, кажется, не работает ни с какой версией DFU-UTIL, которую я пробовал

Мне нужно будет установить драйвер Libusbk с помощью Zadiag, но я надеялся избежать необходимости использовать Zadiag, так как я не уверен, что Libusbk работает с загрузчиком F103 (я предполагаю, что он это делает)

Но я думаю, что общий вывод заключается в том, что использование внутреннего DFU в F4 в Windows будет проблематичным для многих людей. Следовательно, почему было бы лучше, если бы у нас был загрузчик на основе USB CDCACM (серийный) - или, возможно, загрузчик на основе HID или массового хранилища, который распознает Windows

Я предпочитаю для серийного загрузчика, так как это было бы еще менее запутанным для людей, чем текущий загрузчик на основе DFU для F103, так как высокий процент вопросов на форуме - «Я загрузил загрузчик, но я не вижу последовательного устройство " ;-)

И если мы сможем использовать сериал, мы можем использовать встроенные инструменты в IDE для загрузки по серийному USB (при условии, что мы можем увеличить скорость с 115200 до чего -то гораздо быстрее)

Большая часть кода для написания серийного загрузчика на основе USB уже существует в Интернете, это просто вопрос соединения всего этого и создания его работы - что, как я знаю, легче сказать, чем сделать !

AG123
Чт, 01 декабря 2016 г., 5:01
@Роджер
Я думаю, что это буквально проявление «ада длля», задача, вероятно, состоит в том, чтобы выяснить, какая идеальная комбинация
Winusb, Lib-USB и настройки реестра и все приложения на основе LIB-USB E.глин. DFU-UTIL, USB-сериал, используемый Arduino / Maple IDE и т. Д :ржу не могу:
http: // www.DRDOBBS.com/windows/no-end-t ... /227300037

Десять лет назад он был раньше, это был собор против базара, сегодня он превратился в базар против базара :ржу не могу:
https: // en.Википедия.org/wiki/the_cate ... the_bazaar

Rogerclark
Чт, 01 декабря 2016 г., 5:15 утра
AG123 написал:@Роджер
Я думаю, что это буквально проявление «ада длля», задача, вероятно, состоит в том, чтобы выяснить, какая идеальная комбинация
Winusb, Lib-USB и настройки реестра и все приложения на основе LIB-USB E.глин. DFU-UTIL, USB-сериал, используемый Arduino / Maple IDE и т. Д :ржу не могу:
http: // www.DRDOBBS.com/windows/no-end-t ... /227300037

AG123
Чт, 01 декабря 2016 г., 5:36 утра
Что наиболее весело в «DLL Hell», так это то, что даже Microsoft отказалась от решения :ржу не могу:
http: // www.DRDOBBS.com/windows/no-end-t ... 037?pgno = 2 И не должно быть более прямой и особой информации для поставщиков и системных администраторов? Опытные администраторы, которые столкнулись с 0xc0150002 в моем присутствии, понятия не имели, как продолжить. Забавно, что Microsoft, по -видимому, опубликовала статью The Cond of Dll Hell некоторое время назад, но все ссылки на нее (даже на тех, кто находится на http: // www.Microsoft.компонент) укажите на страницу, содержащую текст «Этот контент был удален». https: // msdn.Microsoft.com/en-us/библиотека/MS811694.aspx Контент удален
Этот контент был удален.
Ой неверно, что статья «Конец ада длля» была перенесена в другом месте :ржу не могу:
https: // web.архив.org/web/20010605023 ... Anger1.htm

Rogerclark
Чт, 01 декабря 2016 г., 6:43
(РЖУ НЕ МОГУ)