Как перевернуть съемный бит на USB-накопителе в C#?

Как перевернуть съемный бит моего USB-накопителя или жесткого диска в C#, как это делает этот инструмент?

Заранее спасибо!

2 ответа

Решение

Это нелегко сделать.

"Съемный бит" находится в прошивке контроллера на устройстве, а не в файловой системе, и он не доступен ни для кого, кроме специального инструмента для этого устройства.

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

Единственным вариантом будет прослушивание пакетов USB, отправленных исходной утилитой, их декодирование и создание нового инструмента, который воспроизводит поведение.

Предоставленная ссылка не будет работать на всех USB-устройствах, но работает на многих.

Вы можете искать в реестре и т. Д. И использовать команды реестра C# для "переворачивания" битов и т. Д. Но нет гарантии, что базовые драйверы будут поддерживать конфигурацию. Если вам нужна эта функциональность, купите диск, который ее поддерживает.

Этот ответ, вероятно, принадлежит Super User: Наименьший способ использования USB-накопителя, представленного как часть жесткого диска, - это символическая ссылка NTFS. Который заставит Ваш usb-диск появиться как каталог. Вы не сможете разделить его как жесткий диск, но вы сможете индексировать его и т. Д. - у меня есть несколько не жестких дисков, сконфигурированных как символические ссылки, и музыка, содержащаяся на них, появляется в медиаплеере и библиотеках Windows, все с возможностью поиска и удаляемый.

  • Создайте каталог на жестком диске, который будет точкой монтирования
  • Щелкните правой кнопкой мыши мой компьютер
  • управлять
  • Из хранилища перейдите к управлению дисками
  • щелкните правой кнопкой мыши ваше устройство
  • Выберите Добавить букву диска или Путь
  • Добавьте путь к каталогу.

или используйте команду mklink

Другие вопросы по тегам