ITransferAdviseSink::FileFailure 方法 (shobjidl_core.h)

在发生故障且需要用户交互时调用。

语法

HRESULT FileFailure(
  [in]      IShellItem *psi,
  [in]      LPCWSTR    pszItem,
  [in]      HRESULT    hrError,
  [in, out] LPWSTR     pszRename,
  [in]      ULONG      cchRename
);

参数

[in] psi

类型: IShellItem*

操作失败的 IShellItem

[in] pszItem

类型: LPCWSTR

可选。 指向包含文件名的以 null 结尾的缓冲区的指针。 如果此值为 NULL,则使用 psi 参数提供的名称。

[in] hrError

类型: HRESULT

失败生成的错误代码。 此错误必须由复制引擎处理。

[in, out] pszRename

类型: LPWSTR

可选。 此方法返回时,包含指向以 null 结尾的缓冲区的指针,该缓冲区包含文件的新名称。 名称不能超过 长度 cchRename。 如果此参数为 NULL,则没有可用于重命名的选项。

[in] cchRename

类型: ULONG

pszRename 缓冲区的大小(以字符为单位)。

返回值

类型: HRESULT

任何其他 HRESULT 都应返回到调用进程。 如果未处理失败,则返回值应为 hrError

返回代码 说明
COPYENGINE_S_USER_RETRY
用户单击了 “重试”。 处理程序应重试文件操作。
COPYENGINE_E_USERCANCELLED
用户单击了 “取消”。 正在终止整个复制作业。 处理程序应将此代码返回给复制引擎。
COPYENGINE_S_USER_IGNORED
用户单击了“ 忽略”。 处理程序应跳过创建项,并将此代码返回给复制引擎。

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 shobjidl_core.h (包括 Shobjidl.h)