информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Spanning Tree Protocol: недокументированное применениеЗа кого нас держат?Страшный баг в Windows
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Три миллиона электронных замков... 
 Doom на газонокосилках 
 Умер Никлаус Вирт 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
[Win32] Внимательнее MSDN читать надо 16.05.05 13:31  Число просмотров: 2051
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка>
Сразу за DRIVE_LAYOUT_INFORMATION идет "variable sized array" из PARTITION_INFORMATION

Чем больше у тебя разделов, тем больше места тебе понадобится
<programming>
[win32] ;( ioctl_disk_get_drive_layout 16.05.05 12:49  
Автор: eug Статус: Незарегистрированный пользователь
Отредактировано 16.05.05 12:50  Количество правок: 1
<"чистая" ссылка>
есть указанный вызов:
BOOL DeviceIoControl(
  (HANDLE) hDevice,            // handle to device
  IOCTL_DISK_GET_DRIVE_LAYOUT, // dwIoControlCode
  NULL,                        // lpInBuffer
  0,                           // nInBufferSize
  (LPVOID) lpOutBuffer,        // output buffer
  (DWORD) nOutBufferSize,      // size of output buffer
  (LPDWORD) lpBytesReturned,   // number of bytes returned
  (LPOVERLAPPED) lpOverlapped  // OVERLAPPED structure
);
...
lpOutBuffer 
[out] Pointer to a buffer that receives a DRIVE_LAYOUT_INFORMATION structure. 

lpBytesReturned 
[out] Pointer to a variable that receives the size of the data stored in the output buffer, in bytes. 
If the output buffer is too small, the call fails, GetLastError returns ERROR_INSUFFICIENT_BUFFER, and lpBytesReturned is zero.
...

---

методом н.тыка было получено, что вызов возвращает 136 b [lpBytesReturned], в то время как
40 == sizeof(DRIVE_LAYOUT_INFORMATION).

как можно объяснить такой метаморфоз ?
10х.

msdn
[Win32] Внимательнее MSDN читать надо 16.05.05 13:31  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка>
Сразу за DRIVE_LAYOUT_INFORMATION идет "variable sized array" из PARTITION_INFORMATION

Чем больше у тебя разделов, тем больше места тебе понадобится
10x 16.05.05 13:39  
Автор: eug Статус: Незарегистрированный пользователь
<"чистая" ссылка>
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach