Condividi tramite


Funzione DrvDeviceCapabilities (winddiui.h)

Una DLL dell'interfaccia della stampante DrvDeviceCapabilities funzione restituisce informazioni richieste sulle funzionalità di una stampante.

Sintassi

DWORD DrvDeviceCapabilities(
                 HANDLE   hPrinter,
  [in]           PWSTR    pszDeviceName,
                 WORD     Capability,
  [out]          PVOID    pOutput,
  [in, optional] PDEVMODE pDevmode
);

Parametri

hPrinter

Handle stampante fornito dal chiamante.

[in] pszDeviceName

Puntatore fornito dal chiamante a una stringa del nome della stampante.

Capability

Flag di bit fornito dal chiamante che indica le informazioni richieste. Può trattarsi di uno dei flag elencati nella tabella seguente. I flag sono definiti nel file di intestazione Wingdi.h.

Bandiera Definizione
DC_BINADJUST Non utilizzato per i sistemi operativi basati su NT.
DC_BINNAMES Il pOutput parametro punta a un buffer che la funzione deve riempire con una matrice di buffer stringa, ogni 24 caratteri di lunghezza. Ogni buffer di stringa nella matrice deve contenere una stringa con terminazione NULL wide che specifica il nome di un contenitore di origine carta. Il valore restituito della funzione deve essere il numero di elementi nella matrice restituita. Se pOutput è NULL, la funzione deve restituire solo il numero di elementi della matrice necessari.
DC_BINS Il pOutput parametro punta a un buffer che la funzione deve riempire con una matrice WORD. Ogni elemento della matrice deve contenere una costante con prefisso DMBIN (o un valore personalizzato) che rappresenta un contenitore di origine carta supportato. Il valore restituito della funzione deve essere il numero di elementi nella matrice restituita. Se pOutput è NULL, la funzione deve restituire solo il numero di elementi della matrice necessari.
DC_COLLATE Il parametro pOutput non viene usato. Il valore restituito della funzione deve essere 1 se la stampante supporta la compressione; in caso contrario, il valore restituito deve essere zero.
DC_COLORDEVICE Il parametro pOutput non viene usato. Il valore restituito della funzione deve essere 1 se la stampante supporta la stampa a colori; in caso contrario, il valore restituito deve essere zero.
DC_COPIES Il parametro pOutput non viene usato. Il valore restituito della funzione deve essere il numero massimo di copie supportate dalla stampante.
DC_DATATYPE_PRODUCED Non utilizzato per i sistemi operativi basati su NT.
DC_DRIVER Il parametro pOutput non viene usato. Il valore restituito della funzione deve essere il dmDriverVersion membro della struttura interna del driver [DEVMODEW](/windows/win32/api/wingdi/ns-wingdi-devmodew).
DC_DUPLEX Il parametro pOutput non viene usato. Il valore restituito della funzione deve essere 1 se la stampante supporta la stampa duplex; in caso contrario, il valore restituito deve essere zero.
DC_EMF_COMPLIANT Non utilizzato per i sistemi operativi basati su NT.
DC_ENUMRESOLUTIONS Il parametro pOutput punta a un buffer che la funzione deve riempire con una matrice LONG. Per ogni risoluzione supportata dalla stampante, la funzione deve restituire due parole lunghe (una per la dimensione x e una per la dimensione y) della risoluzione, espressa in punti per pollice. Il valore restituito della funzione deve essere il numero di risoluzioni supportate. Se pOutput è NULL, la funzione deve restituire solo il numero di risoluzioni supportate.
DC_EXTRA Il parametro pOutput non viene usato. Il valore restituito della funzione deve essere il membro dmDriverExtra della struttura interna del driver [DEVMODEW](/windows/win32/api/wingdi/ns-wingdi-devmodew).
DC_FIELDS Il parametro pOutput non viene usato. Il valore restituito della funzione deve essere il dmFields membro della struttura interna del driver [DEVMODEW](/windows/win32/api/wingdi/ns-wingdi-devmodew). Il membro dmFields indica quali membri nella parte indipendente dal dispositivo della struttura DEVMODEW sono supportati dal driver della stampante.
DC_FILEDEPENDENCIES Il pOutput parametro punta a un buffer che la funzione deve riempire con una matrice di buffer stringa, ogni 64 caratteri di lunghezza. Ogni buffer di stringa nella matrice deve contenere una stringa con terminazione NULL wide che specifica il nome di un file che deve essere installato con il driver. Il valore restituito della funzione deve essere il numero di elementi nella matrice restituita. Se pOutput è NULL, la funzione deve restituire solo il numero di elementi della matrice necessari.
DC_MANUFACTURER Non utilizzato per i sistemi operativi basati su NT.
DC_MAXEXTENT Il parametro pOutput non viene usato. La funzione deve restituire una struttura POINTS (descritta nella documentazione di Microsoft Windows SDK). La struttura deve contenere i valori massimi consentiti per il dmPaperWidth (x dimensione) e dmPaperLength (y dimensione) della struttura DEVMODEW della stampante.
DC_MEDIAREADY Il pOutput parametro punta a un buffer che la funzione deve riempire con una matrice di buffer stringa, ogni 64 caratteri di lunghezza. Ogni buffer di stringa nella matrice deve contenere una stringa con terminazione NULL a caratteri wide che specifica il nome di un modulo cartaceo disponibile per l'uso. Il valore restituito della funzione deve essere il numero di elementi nella matrice restituita. Se pOutput è NULL, la funzione deve restituire solo il numero di elementi della matrice necessari.
DC_MEDIATYPENAMES Il pOutput parametro punta a un buffer che la funzione deve riempire con una matrice di buffer stringa, ogni 64 caratteri di lunghezza. Ogni buffer di stringa nella matrice deve contenere una stringa con terminazione NULL wide che specifica il nome di un tipo di supporto supportato. Il valore restituito della funzione deve essere il numero di elementi nella matrice restituita. Se pOutput è NULL, la funzione deve semplicemente restituire il numero di elementi della matrice necessari.
DC_MEDIATYPES Il pOutput parametro punta a un buffer che la funzione deve riempire con una matrice DWORD. Ogni elemento della matrice deve contenere una costante con prefisso DMMEDIA (vedere la struttura [DEVMODEW](/windows/win32/api/wingdi/ns-wingdi-devmodew) o personalizzata che rappresenta un tipo di supporto supportato. Il valore restituito della funzione deve essere il numero di elementi nella matrice restituita. Se pOutput è NULL, la funzione deve semplicemente restituire il numero di elementi della matrice necessari.
DC_MINEXTENT Il parametro pOutput non viene usato. La funzione deve restituire una struttura POINTS (descritta nella documentazione di Windows SDK). La struttura deve contenere i valori minimi consentiti per il dmPaperWidth (x dimensione) e dmPaperLength (dimensione y) della struttura DEVMODEW della stampante.
DC_MODEL Non utilizzato per i sistemi operativi basati su NT.
DC_NUP Il pOutput parametro punta a un buffer che la funzione deve riempire con una matrice DWORD. Ogni elemento matrice deve contenere un numero intero che rappresenta un'opzione N-up, ovvero ogni numero intero deve rappresentare un numero supportato di pagine documento per pagina fisica. Il valore restituito della funzione deve essere il numero di elementi nella matrice restituita. Se pOutput è NULL, la funzione deve restituire solo il numero di elementi della matrice necessari.
DC_ORIENTATION Il parametro pOutput non viene usato. Il valore restituito della funzione deve essere il numero di gradi di rotazione necessari per produrre l'orientamento orizzontale dall'orientamento verticale. Il valore zero indica che l'orientamento orizzontale non è supportato.
DC_PAPERNAMES Il pOutput parametro punta a un buffer che la funzione deve riempire con una matrice di buffer stringa, ogni 64 caratteri di lunghezza. Ogni buffer di stringa nella matrice deve contenere una stringa con terminazione NULL a caratteri wide che specifica il nome di un modulo cartaceo. Il valore restituito della funzione deve essere il numero di elementi nella matrice restituita. Se pOutput è NULL, la funzione deve restituire solo il numero di elementi della matrice necessari.
DC_PAPERS Il pOutput parametro punta a un buffer che la funzione deve riempire con una matrice WORD. Ogni elemento matrice deve contenere una costante con prefisso DMPAPER (o un valore personalizzato) che rappresenta un modulo di carta supportato. Il valore restituito della funzione deve essere il numero di elementi nella matrice restituita. Se pOutput è NULL, la funzione deve restituire solo il numero di elementi della matrice necessari.
DC_PAPERSIZE Il pOutput parametro punta a un buffer che la funzione deve riempire con una matrice POINT. Ogni elemento matrice deve contenere le dimensioni x e y dimensioni della carta di un modulo, in unità di 0,1 mm, con orientamento verticale. Il valore restituito della funzione deve essere il numero di elementi nella matrice restituita. Se pOutput è NULL, la funzione deve restituire solo il numero di elementi della matrice necessari.
DC_PERSONALITY Il pOutput parametro punta a un buffer che la funzione deve riempire con una matrice di buffer stringa, ogni 32 caratteri di lunghezza. Ogni buffer di stringa nella matrice deve contenere una stringa con terminazione NULL wide che specifica il linguaggio di descrizione della stampante supportato dalla stampante (ad esempio, L"HP-GL/2"). Il valore restituito della funzione deve essere il numero di elementi nella matrice restituita. Se pOutput è NULL, la funzione deve restituire solo il numero di elementi della matrice necessari.
DC_PRINTERMEM Il parametro pOutput non viene usato. Il valore restituito della funzione deve essere un numero intero che rappresenta la quantità di memoria della stampante disponibile, espressa in kilobyte.
DC_PRINTRATE Il parametro pOutput non viene usato. Il valore restituito della funzione deve essere un numero intero che rappresenta la frequenza di stampa, nelle unità specificate per DC_PRINTRATEUNIT.
DC_PRINTRATEPPM Il parametro pOutput non viene usato. Il valore restituito della funzione deve essere un numero intero che rappresenta la frequenza di stampa, nelle pagine al minuto.
DC_PRINTRATEUNIT Il parametro pOutput non viene usato. Il valore restituito della funzione deve identificare le unità usate per specificare il valore restituito per DC_PRINTRATE. È necessario specificare una delle costanti seguenti: PRINTRATEUNIT_PPM - pages/min. PRINTRATEUNIT_CPS - chars./sec. PRINTRATEUNIT_LPM - righe/min. PRINTRATEUNIT_IPM - pollici/min.
DC_SIZE Il parametro pOutput non viene usato. Il valore restituito della funzione deve essere il membro dmSize della struttura interna del driver [DEVMODEW](/windows/win32/api/wingdi/ns-wingdi-devmodew).
DC_STAPLE Il parametro pOutput non viene usato. Il valore restituito della funzione deve essere TRUE se la stampante supporta l'apling e FALSE se la stampante non supporta l'associazione.
DC_TRUETYPE Il parametro pOutput non viene usato. Il valore restituito della funzione può essere zero, uno o più dei flag seguenti: DCTT_BITMAP: il dispositivo può stampare i tipi di carattere TrueType come grafica. DCTT_DOWNLOAD: il dispositivo può accettare i tipi di carattere TrueType scaricati. DCTT_DOWNLOAD_OUTLINE: (solo Windows 95/98/Me) Il dispositivo può scaricare i tipi di carattere TrueType. DCTT_SUBDEV: il dispositivo può sostituire i tipi di carattere del dispositivo per i tipi di carattere TrueType.
DC_VERSION Il parametro pOutput non viene usato. Il valore restituito della funzione deve essere il dmSpecVersion membro della struttura interna del driver [DEVMODEW](/windows/win32/api/wingdi/ns-wingdi-devmodew).

[out] pOutput

Puntatore fornito dal chiamante a un buffer per ricevere informazioni fornite dalla funzione. L'uso del buffer dipende dal valore ricevuto per il parametro Capability.

[in, optional] pDevmode

Puntatore fornito dal chiamante a una strutturaDEVMODEW che descrive le caratteristiche correnti del processo di stampa. Se questo parametro è NULL, DrvDeviceCapabilities recupera i valori di inizializzazione predefiniti correnti per il driver della stampante specificato, ad esempio la struttura DEVMODEW predefinita dell'utente della coda di stampa.

Valore restituito

Il valore restituito della funzione dipende dal valore ricevuto per il parametro capability. Se il valore funzionalità ricevuto rappresenta una funzionalità non supportata dal driver o se si verifica un errore, la funzione deve restituire GDI_ERROR.

Fabbisogno

Requisito Valore
piattaforma di destinazione Desktop
intestazione winddiui.h (include Winddiui.h)