如何使用IOCTL_DISK_GROW_PARTITION?
|
我正在尝试将分区缩小到最后使用的LCN。有人使用过此控制代码吗?
我在以下代码中每次都收到系统错误代码87:
HANDLE hDiskHandle = NULL;
DISK_GROW_PARTITION dgp;
DWORD dwBytesReturned = 0;
dgp.PartitionNumber = 2;
dgp.BytesToGrow.QuadPart = -1;
hDiskHandle = CreateFile(_T(\"\\\\.\\PhysicalDrive0\"), GENERIC_ALL, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_ALWAYS, NULL, NULL);
if (hDiskHandle == INVALID_HANDLE_VALUE) {
int err = GetLastError();
printf(\"Unable to get handle on Volume, error : %d\", err);
}
if (!DeviceIoControl(
hDiskHandle,
IOCTL_DISK_GROW_PARTITION,
&dgp,
sizeof dgp,
NULL,
0,
&dwBytesReturned,
NULL
)) {
int err = GetLastError();
printf(\"DeviceIoControl Failed, error : %d\", err);;
}
我的硬盘驱动器有3个分区(C,D,E)。 E:驱动器实际上是空的。
没有找到相关结果
已邀请:
1 个回复
砷竣阿
至