DrvQueryColorProfile-Funktion (winddiui.h)

Mit der DrvQueryColorProfile-Funktion kann eine Druckerschnittstellen-DLL ein ICC-Profil angeben, das für die Farbverwaltung verwendet werden soll.

Syntax

BOOL DrvQueryColorProfile(
        HANDLE    hPrinter,
  [in]  PDEVMODEW pdevmode,
        ULONG     ulQueryMode,
  [out] VOID      *pvProfileData,
  [out] ULONG     *pcbProfileData,
  [out] FLONG     *pflProfileData
);

Parameter

hPrinter

Vom Anrufer bereitgestellter Druckerhandle.

[in] pdevmode

Vom Aufrufer bereitgestellter Zeiger auf eine DEVMODEW-Struktur .

ulQueryMode

Eines der folgenden vom Aufrufer bereitgestellten Bitflags, die den Typ des anzugebenden Profils angibt.

Flag Definition
QCP_DEVICEPROFILE Der Aufrufer fordert ein Geräteprofil an.
QCP_SOURCEPROFILE Der Aufrufer fordert ein Quellprofil an.

[out] pvProfileData

Vom Aufrufer bereitgestellter Zeiger auf einen Puffer zum Empfangen von Profilinformationen.

[out] pcbProfileData

Vom Aufrufer bereitgestellter Zeiger auf einen Wert, der die Größe des Puffers in Bytes darstellt, auf den pvProfileData verweist.

[out] pflProfileData

Eines der folgenden von der Funktion bereitgestellten Bitflags, das den Typ der Von der Funktion zurückgegebenen Informationen angibt.

Flag Definition
QCP_PROFILEDISK Die Funktion gibt den Dateinamen eines ICC-Profils im Puffer zurück, auf den pvProfileData verweist.
QCP_PROFILEMEMORY Die Funktion gibt Profildaten im Puffer zurück, auf den von pvProfileData verwiesen wird.

Rückgabewert

Wenn der Vorgang erfolgreich ist, gibt die Funktion TRUE zurück. Andernfalls wird FALSE zurückgegeben.

Hinweise

Eine Druckerschnittstellen-DLL kann optional eine DrvQueryColorProfile-Funktion bereitstellen. Wenn die Funktion bereitgestellt wird, ruft GDI sie auf, wenn ICM für einen Druckauftrag aktiviert wurde. Der Zweck der Funktion besteht darin, ein ICC-Profil zu bestimmen und anzugeben, das für die Verwendung mit dem Druckauftrag geeignet ist.

Wenn die Druckerschnittstellen-DLL eines Treibers keine DrvQueryColorProfile-Funktion bereitstellt oder die Funktion FALSE zurückgibt, versucht GDI, ein Profil zu finden. Weitere Informationen finden Sie unter Ermitteln von ICC-Profilen.

Wenn die von pcbProfileData angegebene Ausgabepuffergröße zu klein ist, sollte der Treiber den von pcbProfileData angegebenen Größenwert mit der erforderlichen Puffergröße überschreiben, SetLastError(ERROR_INSUFFICIENT_BUFFER) aufrufen und FALSE zurückgeben.

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile winddiui.h (einschließlich Winddiui.h)