Einzelnen Beitrag anzeigen

Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#2

AW: Partition auslesen mit DeviceIoControl und IOCTL_DISK_GET_PARTITION_INFO_EX

  Alt 8. Okt 2015, 12:01
Ich glaube hier ist dein Problem mit den Puffern:
Zitat:
If the output buffer is too small to hold all of the data but can hold some entries, some drivers will return as much data as fits. In this case, the call fails, GetLastError returns ERROR_MORE_DATA, and lpBytesReturned indicates the amount of data received.
Zum Glück kannst du den danach den Aufruf nochmal mit einem größerem dynamisch allozierten Puffer wiederholen, den du dann auf DRIVE_LAYOUT_INFORMATION_EX castest.

PartitionInfoEx: array[0..0] of _PARTITION_INFORMATION_EX ist quasi der Hinweis an den Compiler, das hinter dem Record/Header noch ein Array mit diesem Typ hängt. Um den Speicher dafür musst du dich selbst kümmern.
  Mit Zitat antworten Zitat