Funzione DrvDeviceCapabilities (winddiui.h)
La funzione DrvDeviceCapabilities di una DLL dell'interfaccia della stampante 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 di nome della stampante.
Capability
Flag bit fornito dal chiamante che indica le informazioni richieste. Questo può essere uno dei flag elencati nella tabella seguente. I flag sono definiti nel file di intestazione Wingdi.h.
Flag | Definizione |
---|---|
DC_BINADJUST | Non usato per i sistemi operativi basati su NT. |
DC_BINNAMES | Il parametro pOutput punta a un buffer che la funzione deve riempire con una matrice di buffer stringa, ogni 24 caratteri in lunghezza. Ogni buffer stringa nella matrice deve contenere una stringa con carattere wide, con terminazione NULL 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 parametro pOutput punta a un buffer che la funzione deve riempire con una matrice WORD. Ogni elemento matrice deve contenere una costante con prefisso DMBIN (o 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 confronto; 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 che la stampante può supportare. |
DC_DATATYPE_PRODUCED | Non usato per i sistemi operativi basati su NT. |
DC_DRIVER | Il parametro pOutput non viene usato. Il valore restituito della funzione deve essere il membro dmDriverVersion 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 usato 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, 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 membro dmFields 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 parametro pOutput punta a un buffer che la funzione deve riempire con una matrice di buffer stringa, ogni 64 caratteri in 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 usato 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 la struttura dmPaperWidth (dimensione x ) e dmPaperLength (dimensione y ) della struttura DEVMODEW della stampante. |
DC_MEDIAREADY | Il parametro pOutput punta a un buffer che la funzione deve riempire con una matrice di buffer stringa, ogni 64 caratteri in lunghezza. Ogni buffer stringa nella matrice deve contenere una stringa con caratteri wide, con terminazione NULL che specifica il nome di un modulo di carta 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 parametro pOutput punta a un buffer che la funzione deve riempire con una matrice di buffer stringa, ogni 64 caratteri in lunghezza. Ogni buffer stringa nella matrice deve contenere una stringa con carattere wide, con terminazione NULL 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 parametro pOutput punta a un buffer che la funzione deve riempire con una matrice DWORD. Ogni elemento array 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 la struttura dmPaperWidth (dimensione x ) e dmPaperLength (dimensione y ) della struttura DEVMODEW della stampante. |
DC_MODEL | Non usato per i sistemi operativi basati su NT. |
DC_NUP | Il parametro pOutput 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 intero deve rappresentare un numero supportato di pagine documento per ogni 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 orientamento orizzontale dall'orientamento verticale. Un valore pari a zero indica che l'orientamento orizzontale non è supportato. |
DC_PAPERNAMES | Il parametro pOutput punta a un buffer che la funzione deve riempire con una matrice di buffer stringa, ogni 64 caratteri in lunghezza. Ogni buffer stringa nella matrice deve contenere una stringa con carattere wide, con terminazione NULL che specifica il nome di un modulo di 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_PAPERS | Il parametro pOutput punta a un buffer che la funzione deve riempire con una matrice WORD. Ogni elemento matrice deve contenere una costante DMPAPER con prefisso (o 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 parametro pOutput punta a un buffer che la funzione deve riempire con una matrice POINT. Ogni elemento matrice deve contenere le dimensioni x e y delle dimensioni della carta di un modulo, in unità di 0,1 mm, in 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 parametro pOutput punta a un buffer che la funzione deve riempire con una matrice di buffer stringa, ogni 32 caratteri in 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 intero che rappresenta la quantità di memoria della stampante disponibile, in kilobyte. |
DC_PRINTRATE | Il parametro pOutput non viene usato. Il valore restituito della funzione deve essere un 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 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 - pagine/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 lo stapling e FALSE se la stampante non supporta l'apling. |
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 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 membro dmSpecVersion 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 struttura DEVMODEW che descrive le caratteristiche correnti del processo di stampa. Se questo parametro è NULL, DrvDeviceCapabilities recupera i valori di inizializzazione predefiniti correnti per il driver di 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à che il driver non supporta o se viene rilevato un errore, la funzione deve restituire GDI_ERROR.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Desktop |
Intestazione | winddiui.h (include Winddiui.h) |