nja, hab das jetzt nur mal schnell aus Luckie's NTDiskImage rausgemopst.
Bei Disketten scheint es so keine Probleme zu geben.
muß dann wohl noch irgendwie ein FSCTL_MOUNT_VOLUME mit hinten dran.
oder reicht dieses schon aus?
Delphi-Quellcode:
hDrive: THandle;
W: LongWord;
hDrive := CreateFile('\\.\X:', GENERIC_READ or GENERIC_WRITE,
FILE_SHARE_READ or FILE_SHARE_WRITE, nil, OPEN_EXISTING, 0, 0);
if hDrive <> INVALID_HANDLE_VALUE then begin
DeviceIoControl(hDisk, FSCTL_LOCK_VOLUME { $00090018 },
nil, 0, nil, 0, W, nil);
DeviceIoControl(hDisk, FSCTL_UNLOCK_VOLUME { $0009001C },
nil, 0, nil, 0, W, nil);
CloseHandle(hDrive);
end;