GetICMProfileW 函数 (wingdi.h)

GetICMProfile 函数检索指定设备上下文的当前输出颜色配置文件的文件名。

语法

BOOL GetICMProfileW(
  HDC     hdc,
  LPDWORD pBufSize,
  LPWSTR  pszFilename
);

参数

hdc

指定要从中检索颜色配置文件的设备上下文。

pBufSize

指向 DWORD 的指针,其中包含由 lpszFilename指向的缓冲区的大小。 对于此函数的 ANSI 版本,大小以字节为单位。 对于 Unicode 版本,大小在 WCHAR 中。 如果此函数成功,则返回此参数时包含实际使用的缓冲区的大小。 但是,如果缓冲区不够大,则此函数返回 FALSE。 在这种情况下,GetLastError() 函数返回ERROR_INSUFFICIENT_BUFFER,此参数指向的 DWORD 包含 lpszFilename 缓冲区所需的大小。

pszFilename

指向接收配置文件的路径名称的缓冲区。

返回值

如果此函数成功,则返回值 TRUE。 如果 lpszFilename 参数 NULL,并且缓冲区所需的大小将复制到 l l ,则它还返回 TRUE

如果此函数失败,则返回值 FALSE

言论

GetICMProfile 获取当前输出配置文件的文件名,而不考虑是否为设备上下文启用颜色管理。

给定设备上下文时,GetICMProfile 将通过参数 lpszFilename输出包含设备上下文当前正在使用的颜色配置文件的文件的路径名称。 它还将通过参数 l输出包含路径名称的字符串的长度。

GetICMProfile 返回的配置文件名称可能不在 EnumICMProfiles返回的配置文件列表中。 EnumICMProfiles 函数返回与设备上下文(DC)关联的所有颜色空间配置文件,这些配置文件的设置与 DC 的设置匹配。 如果使用 SetICMProfile 函数来设置当前配置文件,则配置文件可能与与其设置不匹配的 DC 相关联。 例如,可以使用 SetICMProfile 函数将独立于设备的 sRGB 配置文件与 DC 相关联。 此配置文件将用作该 DC 的当前 WCS 配置文件,并且调用 GetICMProfile 将返回其文件名。 但是,配置文件不会显示在从 EnumICMProfiles返回的配置文件列表中。

如果在调用 SetICMProfile 函数之前调用此函数,则可以使用它获取设备上下文的默认配置文件。

Windows 95/98/Me:Unicode Microsoft 层支持 GetICMProfileW。 若要使用此功能,必须将某些文件添加到应用程序,如 Windows 95/98/Me 系统上的 Unicode Microsoft 层中所述。

注意

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

要求

要求 价值
最低支持的客户端 Windows 2000 Professional [仅限桌面应用]
支持的最低服务器 Windows 2000 Server [仅限桌面应用]
目标平台 窗户
标头 wingdi.h
Gdi32.lib
DLL Gdi32.dll

另请参阅