IEmptyVolumeCache::GetSpaceUsed 方法 (emptyvc.h)

请求磁盘清理处理程序可以释放的磁盘空间量。

语法

HRESULT GetSpaceUsed(
  [out] DWORDLONG                 *pdwlSpaceUsed,
  [in]  IEmptyVolumeCacheCallBack *picb
);

参数

[out] pdwlSpaceUsed

类型: DWORDLONG*

处理程序可以释放的磁盘空间量(以字节为单位)。 此值将显示在磁盘清理管理器的列表中,位于处理程序的检查框右侧。 若要指示不知道可以释放多少磁盘空间,请将此参数设置为 -1,并将“???将显示 MB”。 如果在调用 Initialize 时设置EVCF_DONTSHOWIFZERO标志,则将 pdwSpaceUsed 设置为零将通知磁盘清理管理器从其列表中省略处理程序。

[in] picb

类型: IEmptyVolumeCacheCallback*

指向磁盘清理管理器的 IEmptyVolumeCacheCallback 接口的指针。 此指针可用于调用该接口的 ScanProgress 方法,以报告操作进度。

返回值

类型: HRESULT

此方法可以返回其中一个值。

返回代码 说明
S_OK
成功。
S_FALSE
处理程序尝试计算可释放的磁盘空间量时出错。
E_ABORT
扫描操作过早结束。 当对 ScanProgress 的调用返回E_ABORT时,通常会返回此值。 此返回值指示用户通过单击磁盘清理管理器的“ 取消 ”按钮取消了操作。

注解

当磁盘清理管理器调用此方法时,处理程序应开始扫描其文件,以确定可以删除哪些文件以及将释放多少磁盘空间。 处理程序应定期调用 IEmptyVolumeCache::ScanProgress 以使用户了解扫描进度,尤其是在需要很长时间的情况下。 经常调用此方法还允许处理程序确定用户是否已取消操作。 如果 ScanProgress 返回E_ABORT,则表示用户已取消扫描。 处理程序应立即停止扫描并返回E_ABORT。

应仅将 pdwSpaceUsed 参数设置为 -1 作为最后的手段。 如果用户不知道将释放多少空间,则处理程序对用户具有有限的值。

要求

要求
最低受支持的客户端 Windows 2000 专业版、Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 emptyvc.h
DLL Shell32.dll (5.0 或更高版本)