|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - Открытие жесткого / оптического диска как потока вывода |
|
C/C++ - Открытие жесткого / оптического диска как потока вывода
|
Ветеран Сообщения: 1404 |
Профиль | Отправить PM | Цитировать Если открывать оптический диск как поток вывода (т.е. структура файловой системы значения не имеет), то на каком уровне привилегий это должно осуществляться? Необходимо ли это писать как драйвер с привилегиями SYSTEM?
HANDLE hDev = CreateFile(TEXT("\\\\.\\D:"), GENERIC_READ | GENERIC_WRITE, FILE_SHARE_READ|FILE_SHARE_WRITE, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); if (hDev == INVALID_HANDLE_VALUE) { printf("Could not open file (error %d)\n", GetLastError()); return 0; } Однако при попытке считать данные if( FALSE == ReadFile(hDev, ReadBuffer, BUFFER_SIZE-2, &dwBytesRead, NULL) ) { printf("Could not read from file (error %d)\n", GetLastError()); CloseHandle(hDev); return 0; } if (dwBytesRead > 0) { ReadBuffer[dwBytesRead+1]='\0'; // NULL character _tprintf(TEXT("Text read (%d bytes): \n"), dwBytesRead); printf("%s\n", ReadBuffer); } else { printf("exit\n"); } Если я пытаюсь открывать жесткий диск кодом HANDLE hDev = CreateFile(TEXT("\\\\.\\PhysicalDrive0"), GENERIC_READ | GENERIC_WRITE, FILE_SHARE_READ|FILE_SHARE_WRITE, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); В чем я ошибаюсь? |
|
Отправлено: 10:03, 07-02-2014 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать mrcnn, посмотрите исходный код Far Manager'а. Он умеет открывать «\\.\PhysicalDriveN» как для просмотра, так и для редактирования. Может, что найдёте полезного.
|
Отправлено: 10:49, 07-02-2014 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
HDD - как определить состояние жесткого диска? | Remi Martin | Накопители (SSD, HDD, USB Flash) | 11 | 07-02-2012 19:35 | |
CMD/BAT - Как сделать два потока вывода в файл и на экран | zamut | Скриптовые языки администрирования Windows | 2 | 27-12-2011 09:10 | |
HDD - Как восстановить данные с жесткого диска? | ES | Накопители (SSD, HDD, USB Flash) | 1 | 13-08-2009 13:39 | |
Установка - Как установить Висту с жесткого диска | dentist_18RUS | Microsoft Windows Vista | 1 | 30-11-2007 03:45 |
|