А у меня под 2000 виндовсом ети параметры какими были до виызова функции такими и остались после :( Я уже знаю как найти размер сектора:
| Код | DISK_GEOMETRY dge; ZeroMemory(&dge, sizeof(DISK_GEOMETRY)); DWORD bytesReturned = 0; HANDLE hDrive = CreateFileA("\\\\.\\C:", GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_EXISTING, 0, 0); DeviceIoControl(hDrive, IOCTL_DISK_GET_DRIVE_GEOMETRY, NULL, 0, &dge, sizeof(DISK_GEOMETRY), &bytesReturned , NULL); cout << "Bytes per sector: " << dge.BytesPerSector << endl;
|
Еще б както найти количество секторов на кластер
Добавлено через 9 минут и 9 секунд разобрался. Я использовал функцию GetDiskFreeSpace но не придал значения что она там какимто макросом переопределена както так : #define GetDiskFreeSpace GetDiskFreeSpaceW тоесть я использовал "юникодовскую версию" а тут попробовал вместо GetDiskFreeSpace подставить GetDiskFreeSpaceA и тутже все начало работать  |