共用方式為


enumColorProfilesA 函式 (icm.h)

列舉滿足指定列舉準則的所有設定檔。

語法

BOOL EnumColorProfilesA(
  PCSTR      pMachineName,
  PENUMTYPEA pEnumRecord,
  PBYTE      pEnumerationBuffer,
  PDWORD     pdwSizeOfEnumerationBuffer,
  PDWORD     pnProfiles
);

參數

pMachineName

保留的。 必須是 Null。 此參數旨在指向要列舉設定檔的電腦名稱稱。 Null指標表示本機電腦。

pEnumRecord

指定列舉準則之結構的指標。

pEnumerationBuffer

要列舉設定檔之緩衝區的指標。 符合 *pEnumRecord 中所指定準則的設定檔名稱MULTI_SZ字串將會放在此緩衝區中。

pdwSizeOfEnumerationBuffer

包含 pBuffer所指向之緩衝區大小的變數指標。 傳回時, *pdwSize 包含實際使用或需要的緩衝區大小。

pnProfiles

在傳回時,將包含的變數指標,實際複製到緩衝區的設定檔名稱數目。

傳回值

如果此函式成功,則傳回值為 TRUE

如果此函式失敗,則傳回值為 FALSE。 如需擴充錯誤資訊,請呼叫 GetLastError

備註

根據紙張和筆跡類型,數個設定檔通常與印表機相關聯。 每個裝置都有預設設定檔。 針對國際色彩聯盟 () 設定檔,當您的應用程式建立裝置內容 (DC) 時,GDI 會從與 ICC 相關聯的設定檔中選取最佳設定檔。

請勿嘗試使用 EnumColorProfiles 來判斷裝置的預設設定檔。 相反地,請建立裝置的裝置內容,然後叫用 GetICMProfile 函式 。 在 Windows Vista 和 Windows 7 上, WcsGetDefaultColorProfile 函式也可用來判斷裝置的預設色彩設定檔。

如果pEnumRecord參數所指向之ENUMTYPE類型的dwFields成員設定為 ET_DEVICENAME,則不論裝置類別為何,此函式都會列舉與所有附加至使用者電腦之裝置類型相關聯的色彩設定檔。 如果pEnumRecord參數指向之結構的dwFields成員設定為 ET_DEVICENAME 或 ET_DEVICECLASS,且在 結構的dwDeviceClass成員中指定了裝置類別,則此函式只會列舉與指定之裝置類別相關聯的設定檔。 如果 dwFields 成員只設定為 ET_DEVICECLASS, EnumColorProfiles 函式會列舉可與該類型裝置相關聯的所有設定檔。

每當 EnumColorProfiles 檢查與特定裝置相關聯的設定檔時,結果會取決於使用者選擇使用與該裝置相關聯的全系統組態檔案清單,或其自己的 (「每位使用者」) 清單。 將WcsSetUsePerUserProfiles 與其 usePerUserProfiles參數設定為TRUE,會導致未來對 EnumColorProfiles的呼叫只查看目前使用者的個別使用者設定檔關聯清單。 呼叫WcsSetUsePerUserProfiles 並將其 usePerUserProfiles參數設為FALSE會導致未來呼叫 EnumColorProfiles查看指定裝置的全系統設定檔關聯清單。 如果目前使用者從未呼叫 WcsSetUsePerUserProfilesEnumColorProfiles 會檢查整個系統的清單。

您的應用程式可以使用 EnumColorProfiles 來取得列舉設定檔的緩衝區大小。 它應該呼叫 EnumColorProfiles 函式, 並將 pBuffer 參數設定為 Null。 當函式傳回時, pdwSize 參數會包含所需的緩衝區大小,以位元組為單位。 您的程式可以使用該資訊來配置列舉緩衝區。 然後,它可以再次叫用 EnumColorProfiles ,並將 pBuffer 參數設定為緩衝區的位址。

此函式會提供在啟用一致設定檔列舉中,將 WCS 特定 DMP 資訊轉換為舊版 EnumType 記錄的資訊。 如果此資訊不存在,則預設值會與 ICC 相同。

每個使用者/LUA 支援

列舉是目前使用者特有的。 系統會考慮整個系統與目前的使用者裝置關聯。 針對預設設定檔群組態,目前的使用者設定會覆寫整個系統。

需求

   
最低支援的用戶端 Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
標頭 icm.h

另請參閱