SetupCopyErrorA 函数 (setupapi.h)

[此函数可用于“要求”部分所示的操作系统。 它可能在后续版本中变更或不可用。 安装程序API 不应再用于安装应用程序。 请改用 Windows 安装程序来开发应用程序安装程序。 SetupAPI 继续用于安装设备驱动程序。]

SetupCopyError 函数生成一个对话框,通知用户复制文件错误。

语法

WINSETUPAPI UINT SetupCopyErrorA(
  [in]      HWND   hwndParent,
  [in]      PCSTR  DialogTitle,
  [in]      PCSTR  DiskName,
  [in]      PCSTR  PathToSource,
  [in]      PCSTR  SourceFile,
  [in]      PCSTR  TargetPathFile,
  [out]     UINT   Win32ErrorCode,
  [in]      DWORD  Style,
  [in, out] PSTR   PathBuffer,
  [in]      DWORD  PathBufferSize,
  [in, out] PDWORD PathRequiredSize
);

参数

[in] hwndParent

此对话框的父窗口的句柄。

[in] DialogTitle

指向以 null 结尾的字符串的可选指针,该字符串指定对话框标题。

此参数可以为 NULL。 如果此参数为 NULL,则使用“复制错误”的默认标题 (本地化为系统语言) 。

[in] DiskName

指向 以 null 结尾的字符串的可选指针,该字符串指定要插入的磁盘的名称。

此参数可以为 NULL。 如果此参数为 NULL,则使用默认名称“ (未知) ” (本地化为系统语言) 。

[in] PathToSource

指向操作失败的源文件的路径组件的指针,例如 F:\x86。

使用 以 null 结尾的字符串。

[in] SourceFile

指向 以 null 结尾的字符串的指针,该字符串指定操作失败的文件的文件名部分。

使用 以 null 结尾的字符串。 如果用户单击“ 详细信息 ”或“ 浏览 ”按钮,将显示此文件名。 SetupCopyError 函数查找使用其压缩表单名称的文件。 因此,可以传递 cmd.exe,而不必担心文件实际上在源媒体上以cmd.ex_的形式存在。

[in] TargetPathFile

指向 以 null 结尾的字符串的可选指针,该字符串指定用于重命名和复制操作的目标文件的完整路径。

使用 以 null 结尾的字符串。 此参数可以为 NULL。 如果未指定 TargetPathFile,则使用“ (未知) ” (本地化为系统语言) 。

[out] Win32ErrorCode

如果发生错误,则此成员是 系统错误代码

如果未发生错误,则NO_ERROR。

[in] Style

控制对话框的显示格式和行为的标志。

此参数可以是以下标志之一。

IDF_NOBROWSE

不显示浏览选项。

IDF_NOSKIP

不显示跳过文件选项。

IDF_NODETAILS

不显示详细信息选项。

如果设置了此标志,则可以省略 TargetPathFileWin32ErrorCode 参数。

IDF_NOCOMPRESSED

不要检查源文件的压缩版本。

IDF_OEMDISK

操作源是硬件制造商提供的磁盘。

IDF_NOBEEP

防止对话框在首次出现时发出哔哔声来引起用户的注意。

IDF_NOFOREGROUND

防止对话框成为前台窗口。

IDF_WARNIFSKIP

警告用户跳过文件可能会影响安装。

[in, out] PathBuffer

指向变量的可选指针,此函数在其中返回路径 (不包括用户在对话框中指定的位置的文件名) 。 应使用以 null 结尾的字符串。

以 null 结尾的字符串不应超过目标缓冲区的大小。 为了避免缓冲区不足错误, PathBuffer 至少应MAX_PATH。 有关详细信息,请参阅本主题的“备注”部分。

[in] PathBufferSize

PathBuffer 指向的缓冲区的大小(以字符为单位)。

缓冲区大小应至少为 MAX_PATH 个字符,包括 null 终止符。

[in, out] PathRequiredSize

指向变量的可选指针,此函数在其中返回所需的缓冲区大小(以字符为单位),包括 null 终止符。

返回值

函数返回以下值之一。

要获得更多的错误信息,请调用 GetLastError。

注解

如果调用此函数的 PathBufferNULL,PathBufferSize 为 0 (零) ,则该函数将保存指定数据所需的缓冲区大小放入 PathRequiredSize 指向的变量中。

如果函数成功,则返回值NO_ERROR。 否则,返回值是指定的值之一。

为了避免缓冲区不足错误,至少应MAX_PATH ReturnBuffer

注意

setupapi.h 标头将 SetupCopyError 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名的使用与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定

要求

要求
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 setupapi.h
Library Setupapi.lib
DLL Setupapi.dll

请参阅

函数

概述

SetupDeleteError

SetupPromptForDisk

SetupRenameError