Как поменять id флешки
Сабж.
Имеется два идентичных флешдрайва по 32 метра на контроллере OTI 6828,
все было прекрасно, до одного момента — одна из флешей глюкнула
и ее пришлось форматнуть спец.утилитами (RecoverDisk),
т.к. флеш была нонейм, то ессно утилита была стороннего бренда
и у флешки сменился ID производителя и т.п. — но это все к делу не относится,
т.к. вторую флеш (рабочую) форматнули тем же утилем и они снова стали близняшками.
во всем, кроме ОДНОГО — это ID девайса, он слетел во время глюка, а утиль его не трогает.
Теперь ось их стала различать, что не катит ессно, надо как-то вернуть одинаковые ID,
вопрос ЧЕМ?
З.Ы. С советами типа "купите новые", идут лесом,
на этих флешах кей от КБ, по 70килобайт
и тратится на эту фигню нет смысла.
В остальном флеши абсолютно нормально работают
change USB vendor id / product id
Say for example there’s a useful program which expects a particular device but you don’t see why you should buy a new one when you have a very similar device already that’s likely to work with the program.
I’ve done lots of Googling and apparently it can be done under Linux so it occurs to me to run Windows in a VM under Linux, but that would be a bit inconvenient.
3 Answers 3
You might be able to do this with devcon (easiest ways to install listed here), a utility provided with the Windows DDK/WDK. You can find a standalone version suitable for Windows XP at the link.
In particular, devcon‘s sethwid command may be able to do what you’re looking for. See Examples page for some tutorials.
I’m not sure this will do exactly what you want, but I’ve a strong feeling that it may be as close as you’ll get without writing your own filter driver. If you do need to write your own driver, grab the WDK and read the devcon sourcecode in src\setup\devcon.
You may also be able to use devcon in other ways to accomplish your goal, but without further details it’s hard to say exactly how. Good luck!
The USB vendor-id/product-id are likely to be hard-coded in the device’s firmware, and might therefore be unchangeable without hacking the firmware.
As most firmware is protected against changes, this is likely to brick the USB device.
Sorry to be negative, but I don’t think it’s possible.
![]()
I haven’t done quite what you’re asking, but this might give you a starting point. Also, I’ve only ever done this kind of stuff on pre-Vista versions.
The information that Device Manager and the Registry use to associate strings with hardware devices is initialized from the .INF file provided with the device. Fortunately, the .INF files are text files structured like .INI files so they’re easy to work with. To change the «identity» of an existing device:
- Go to the WINDOWS\INF directory and find the right file. Probably you’ll need to search through all the .INF files for a unique string associated with the device.
- Backup the file.
- Open the .INF file with a text editor, find the [Strings] section, and change the appropriate string.
- In Device Manager, uninstall and reinstall the device.
Hopefully, your application is only looking for this string. If it’s looking for the unique hardware ID (you’ll see this in the .INF file as a bus and hardware id number like bus\VID_nnnn&PID_xxxx) then this technique won’t work.
изменить идентификатор производителя USB / идентификатор продукта
Скажем, например, есть полезная программа, которая ожидает конкретного устройства, но вы не понимаете, зачем покупать новое, если у вас уже есть очень похожее устройство, которое может работать с программой.
Я много гуглил и, видимо, это можно сделать под Linux, поэтому мне приходит в голову запустить Windows на виртуальной машине под Linux, но это было бы немного неудобно.
3 ответа 3
Идентификатор производителя USB / идентификатор продукта, вероятно, будет жестко задан в прошивке устройства и, следовательно, может быть неизменным без взлома прошивки.
Поскольку большинство встроенных программ защищено от изменений, это может привести к повреждению устройства USB.
Извините за негатив, но я не думаю, что это возможно.
Возможно, вы сможете сделать это с помощью devcon (простой способ установки из списка), утилиты, поставляемой с Windows DDK/WDK. Вы можете найти отдельную версию, подходящую для Windows XP, по ссылке.
В частности, команда devcon sethwid может сделать то, что вы ищете. См. Страницу примеров для некоторых уроков.
Я не уверен, что это будет именно то, что вы хотите, но у меня есть сильное ощущение, что это может быть настолько близко, насколько вы получите, не написав свой собственный драйвер фильтра. Если вам нужно написать свой собственный драйвер, возьмите WDK и читать DevCon исходники , в И \ Настройка \ DevCon.
Вы также можете использовать devcon для достижения своей цели другими способами, но без подробностей сложно сказать, как именно. Удачи!
Я не сделал совсем то, что вы просите, но это может дать вам отправную точку. Кроме того, я когда-либо делал такие вещи только в версиях до Vista.
Информация, которую диспетчер устройств и реестр используют для привязки строк к аппаратным устройствам, инициализируется из.INF-файл, предоставляемый с устройством. К счастью,INF-файлы представляют собой текстовые файлы, структурированные как.INI-файлы, поэтому с ними легко работать. Чтобы изменить «идентичность» существующего устройства:
- Перейдите в каталог WINDOWS\INF и найдите нужный файл. Вероятно, вам нужно будет найти все.INF-файлы для уникальной строки, связанной с устройством.
- Сделайте резервную копию файла.
- Открой .INF-файл с текстовым редактором, найдите раздел [Strings] и измените соответствующую строку.
- В диспетчере устройств удалите и переустановите устройство.
Надеюсь, ваше приложение ищет только эту строку. Если он ищет уникальный идентификатор оборудования (вы увидите это в.INF-файл как идентификатор шины и аппаратного обеспечения (например, bus\VID_nnnn & PID_xxxx), тогда этот метод не будет работать.
Восстановление и прошивка флешки по VID и PID
Иногда у флешек бывают сбои в работе. Разберем таковые на логическом уровне. Возможны следующие варианты неполадок:
- не читается;
- подвисает;
- при переносе данных происходят ошибки и т. п.
Такого рода неполадки исправимы, их можно устранить перепрограммированием контроллера.
Что такое VID и PID флешки
Для восстановления флешки необходимо узнать VID и PID код.
VID и PID – это номер разработчика устройства и номер устройства, соответственно. Идентификаторы дают понимание, какую прошивку нужно использовать. Перепрошивка возобновит функционирование флешки в первоначальном виде.
Для того чтобы узнать вышеуказанные номера, есть 3 способа:
- Вскрыть корпус и посмотреть обозначения на чипе.
- Зайти в свойства флешки.
- Использовать специальные программы.
Вариант №1. Осуществляется путем вскрытия пластиковой оболочки флешки. Вариант небезопасен тем, что можно повредить микросхемы, поэтому данный способ рекомендуется использовать в последнюю очередь. После разбора корпуса номер можно увидеть на чипе.
Вариант №2. Подразумевает использование диспетчера устройств. Порядок действий: «Диспетчер устройств» → «Контроллеры USB» → «Запоминающее устройство USB», кликаем по нему правой кнопкой мышки и в меню выбираем «Свойства» → «Сведения» → «ИД оборудование». Будет написано примерно следующее:
После VID_ … — четырехзначное цифро-буквенное обозначение, это и есть VID, в нашем случае – 25EN.
После PID _ … — код PID, его номер будет 2100.
Вариант №3. Простой и точный, потому что программы разрабатывались специально для определения этих значений. Рассмотрим наиболее популярные и доступные платформы.
CheckUDisk

С ней легко разобраться, утилита понятна на интуитивном уровне.
- Двойным кликом по ярлыку активируем софт.
- Сверху выбираем сломанную флешку.
- Внизу прописываются ее свойства. В первых строчках идет VID и PID.
Flash Drive Information Extractor

С этой программой вы получаете больше характеристик о вашей флешке, в том числе VID и PID.
- Двойным кликом по ярлыку активируем софт.
- Кликаем на «Получить информацию о флешке».
- Нужная информация прописывается сверху.
Скачать последнюю версию программы можно с нашего сайта.
ChipEasy

Аналогично предыдущим платформам, данные о флеш-носителе предоставляется доступно и понятно. Имеет также простой алгоритм получения кодов.
- Двойным кликом по ярлыку активируем софт.
- В верхнем окне кликаем по названию флешки.
- В нижнем окне будет список, выделяем и копируем строчки с VID и PID.
USBDeview

С помощью этой утилиты вы сможете не только узнать идентификаторы, но и посмотреть всю историю когда-либо подключенных USB-устройств к ПК. Софт имеет функцию просмотра информации об этих девайсах.
- Двойным кликом по ярлыку активируем софт.
- Для нахождения нужной флешки из перечня всех устройств переходим во вкладку «Опции» и удаляем галочку «Показать отключенные устройства».
- После предыдущего шага список гаджетов уменьшится, и найти флешку будет легко. Нажимаем на название, появится описание флешки. Нужна строчка со значениями VendorID и ProductID, – это все те же требуемые коды для восстановления, копируем их.
Скачать последнюю версию программы можно с нашего сайта.
Инструкция по подбору утилиты для прошивки
Теперь, имея идентификационный номер производителя (VID) и кода устройства (PID), переходим к подбору прошивки. С их помощью подберем софт для контроллера. На данный момент есть различные интернет-ресурсы со списками флешок, где прописан софт, пригодный для их прошивки.
- Можно воспользоваться базой данных flashboot.ru:
- Вкладка «iFlash», в ячейках VID и PID вводим ранее определенные цифры. По результату поиска получаем список сходных флешок.
- Выбираем наиболее совпадающую по имени, модели и объему. В столбике «UTILS» будет название утилиты, с помощью которой возможна перепрошивка флешки.
- Копируем наименование и на этой же странице вверху нажимаем вкладку «Файлы». В поисковом поле вставляем название, нажимаем «Поиск». Если в базе есть нужная перепрошивка, то справа от наименования нажимаем «Скачать».
- Если не нашли, можно воспользоваться поисковой системой и найти программу на любом другом подобном ресурсе. Также скачиваем на свой ПК.
Помните, что перед установкой или разархивацией скачанной утилиты обязательно нужно проверить программу на наличие вредоносных, в том числе рекламных, файлов.
Инструкция по прошивке флешки
Перед началом прошивки отключите флешку. Разархивируйте скачанный софт. Изучите вложения в папке под названием readme.txt. В этом файле прописываются инструкции по использованию платформы, либо информация о том, где эту инструкцию можно скачать. Запускаем .exe файл.
Подключаем флешку. Софт идентифицирует ее и появится название. После запуска утилиты нажимаем «Start» и процесс перепрошивки будет запущен.
Важно! В этот момент нельзя ни в коем случае извлекать флешку.
После окончания процесса, система предложит форматирование съемного накопителя, но следует для начала переподключить его. Далее Windows установит драйвер, теперь можно отформатировать флешку.