Funzione GetPrintProcessorCapabilities (winsplp.h)

La funzione GetPrintProcessorCapabilities di un processore di stampa restituisce funzionalità associate a un tipo di dati di input specificato.

Sintassi

DWORD GetPrintProcessorCapabilities(
  [in]  LPTSTR  pValueName,
  [in]  DWORD   dwAttributes,
  [out] LPBYTE  pData,
  [in]  DWORD   nSize,
  [out] LPDWORD pcbNeeded
);

Parametri

[in] pValueName

Puntatore fornito dal chiamante a una stringa che rappresenta un tipo di dati supportato dal processore di stampa. Il puntatore di stringa deve essere di tipo LPWSTR.

[in] dwAttributes

Flag di attributi forniti dal chiamante. Fare riferimento al membro Attributes delle strutture PRINTER_INFO_x .

[out] pData

Puntatore fornito dal chiamante a una struttura PRINTPROCESSOR_CAPS_1 o PRINTPROCESSOR_CAPS_2 .

[in] nSize

Valore fornito dal chiamante che rappresenta le dimensioni del buffer a cui punta pData.

Se il valore è minore di sizeof(PRINTPROCESSOR_CAPS_1), questa funzione deve fornire un valore uguale a sizeof(PRINTPROCESSOR_CAPS_1) o sizeof(PRINTPROCESSOR_CAPS_2), a seconda della struttura supportata dal processore di stampa.

Se il valore è minore di sizeof(PRINTPROCESSOR_CAPS_1), il processore di stampa winprint fornirà un valore sizeof(PRINTPROCESSOR_CAPS_2).

[out] pcbNeeded

Puntatore fornito dal chiamante a una posizione per ricevere le dimensioni minime necessarie per il buffer a cui punta pData.

Valore restituito

Se l'operazione ha esito positivo, la funzione deve restituire ERROR_SUCCESS. In caso contrario, deve restituire un codice di errore Win32.

Commenti

I processori di stampa possono facoltativamente esportare una funzione GetPrintProcessorCapabilities . Lo scopo della funzione è restituire una struttura di PRINTPROCESSOR_CAPS_1 o PRINTPROCESSOR_CAPS_2 compilata per ogni tipo di dati di input supportato dal processore di stampa.

Lo spooler chiama la funzione GetPrintProcessorCapabilities di un processore di stampa quando un'applicazione chiama GetPrinterData, specificando un nome di valore con un formato di PrintProcCaps_datatype, dove datatype è il nome di un tipo di dati di input. Prima di chiamare GetPrintProcessorCapabilities, lo spooler rimuove il prefisso PrintProcCaps_ dalla stringa del nome del valore.

La funzione deve determinare se il buffer ricevuto è sufficientemente grande e, in caso affermativo, deve compilare la struttura PRINTPROCESSOR_CAPS_1 o PRINTPROCESSOR_CAPS_2 e restituire. Il valore di nSize determina se verrà utilizzato PRINTPROCESSOR_CAPS_1 o PRINTPROCESSOR_CAPS_2 .

La funzione deve sempre usare la posizione a cui punta pcbNeed per restituire le dimensioni del buffer necessarie, indipendentemente dal fatto che il buffer effettivo sia sufficientemente grande.

Il valore restituito specificato diventa il valore restituito fornito dallo spooler per GetPrinterData.

Requisiti

Requisito Valore
Piattaforma di destinazione Desktop
Intestazione winsplp.h (include Winsplp.h)