共用方式為


enumColorProfilesW 函式 (icm.h)

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

語法

BOOL EnumColorProfilesW(
  PCWSTR     pMachineName,
  PENUMTYPEW 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 Professional [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限桌面應用程式]
標頭 icm.h

另請參閱