Утилита для отключения usb-накопителей - C#
Формулировка задачи:
Мне нужно написать небольшое приложение, висящее в трее, позволяющее максимально быстро «завершить работу» usb-флэшки или предоставить информацию о том, какое приложение мешает ее отключить. Требуется поддержка работы из командной строки и платформы .net
Я лазил в интернете, но конкретно ничего не нашел про извлечение флешки в Виндолсе.
Помогите, если кто-то знает что-нибдь в этой области. Можно и в Линуксе, если тут что-нибудь знаете.
Заранее, спасибо!
Решение задачи: «Утилита для отключения usb-накопителей»
textual
Листинг программы
#include <windows.h> void DisconectUsb(char Vol) { char *volname=new char[7]; volname[0]='\\'; volname[1]='\\'; volname[2]='.'; volname[3]='\\'; volname[4]=Vol; volname[5]=':'; volname[6]='\0'; HANDLE hVol; BOOL res; hVol = CreateFile(volname, GENERIC_READ || GENERIC_WRITE, FILE_SHARE_READ || FILE_SHARE_WRITE, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0); if(hVol == INVALID_HANDLE_VALUE) return; DWORD nBytesReturned = 0; res = DeviceIoControl(hVol, IOCTL_STORAGE_EJECT_MEDIA, NULL, 0, NULL, 0, &nBytesReturned, NULL); delete [] volname; } int main() { for(int i=69; i<80; i++) { DisconectUsb(i); } return 0; }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д