FSCTL_SET_REFS_SMR_VOLUME_GC_PARAMETERS控制代码

FSCTL_SET_REFS_SMR_VOLUME_GC_PARAMETERS控制代码控制杂碎磁记录 (SMR) 卷上的垃圾回收。

BOOL
   DeviceIoControl( (HANDLE)       hDevice,         // handle to volume
                    FSCTL_SET_REFS_SMR_VOLUME_GC_PARAMETERS, // dwIoControlCode
                    (LPDWORD)      lpInBuffer,      // input buffer
                    (DWORD)        nInBufferSize,   // size of input buffer
                     NULL,     // output buffer
                     0,  // size of output buffer
                    (LPDWORD)      lpBytesReturned, // number of bytes returned
                    (LPOVERLAPPED) lpOverlapped );  // OVERLAPPED structure

参数

  • hDevice [in]:设备的句柄。 若要获取设备句柄,请调用 CreateFile 函数。

  • dwIoControlCode [in]:操作的控件代码。 对此操作使用 FSCTL_SET_REFS_SMR_VOLUME_GC_PARAMETERS

  • lpInBuffer [in]:指向调用方分配 的REFS_SMR_VOLUME_GC_PARAMETERS 结构的指针。

  • nInBufferSize [in]:输入缓冲区的大小(以字节为单位)。

  • lpOutBuffer [out]:未与此操作一起使用;设置为 NULL

  • nOutBufferSize [in]:未与此操作一起使用;设置为零。

  • lpBytesReturned [out]:未与此操作一起使用;设置为 NULL

  • lpOverlapped [in]:指向 OVERLAPPED 结构的指针。

    如果在未指定 FILE_FLAG_OVERLAPPED 的情况下打开 hDevice,则忽略 lpOverlapped。

    如果使用 FILE_FLAG_OVERLAPPED 标志打开 hDevice,则此操作将作为重叠(异步)操作执行。 在这种情况下,lpOverlapped 必须指向包含事件对象句柄的有效 OVERLAPPED 结构。 否则,函数会以不可预知的方式失败。

    对于重叠操作,DeviceIoControl 会立即返回,并在操作完成时向事件对象发出信号。 否则,在操作完成或发生错误之前,函数不会返回。

返回值

如果操作成功完成,DeviceIoControl 将返回非零值。

如果操作失败或挂起,DeviceIoControl 将返回零。 要获得更多的错误信息,请调用 GetLastError

要求

要求类型 要求
最低受支持的客户端 Windows 10 版本 1709
标头 WinIoctl.h

请参阅

DeviceIoControl