Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Il metodo IPrintOemUni::EnablePDEV consente a un plug-in di rendering per Unidrv di creare la propria struttura PDEV.
Sintassi
HRESULT EnablePDEV(
PDEVOBJ pdevobj,
PWSTR pPrinterName,
ULONG cPatterns,
HSURF *phsurfPatterns,
ULONG cjGdiInfo,
GDIINFO *pGdiInfo,
ULONG cjDevInfo,
DEVINFO *pDevInfo,
DRVENABLEDATA *pded,
[out] OUT PDEVOEM *pDevOem
);
Parametri
pdevobj
Puntatore fornito dal chiamante a una struttura DEVOBJ.
pPrinterName
Puntatore fornito dal chiamante a una stringa di testo che rappresenta l'indirizzo logico della stampante.
cPatterns
Valore fornito dal chiamante che rappresenta il numero di handle di superficie tipizzata HSURF contenuti nel buffer a cui punta phsurfPatterns.
phsurfPatterns
Puntatore fornito dal chiamante a un buffer sufficientemente grande da contenere cPatterns numero di handle di superficie tipizzato HSURF. Gli handle rappresentano i motivi di riempimento della superficie.
cjGdiInfo
Valore fornito dal chiamante che rappresenta le dimensioni della struttura a cui punta pGdiInfo.
pGdiInfo
Puntatore fornito dal chiamante a una struttura GDIINFO.
cjDevInfo
Valore fornito dal chiamante che rappresenta le dimensioni della struttura a cui punta pDevInfo.
pDevInfo
Puntatore fornito dal chiamante a una struttura DEVINFO.
pded
Puntatore fornito dal chiamante a una struttura di DRVENABLEDATA contenente gli indirizzi delle funzioni di hook DDI grafica del driver della stampante. Per altre informazioni, vedere la sezione Osservazioni seguente.
[out] pDevOem
Riceve un puntatore fornito dal metodo a una struttura PDEV privata. Per altre informazioni, vedere la sezione Osservazioni seguente.
Valore restituito
Il metodo deve restituire uno dei valori seguenti.
| Codice restituito | Descrizione |
|---|---|
|
Operazione riuscita. |
|
Operazione non riuscita |
Se l'operazione non riesce, il metodo deve chiamare SetLastError per impostare un codice di errore.
Osservazioni
Un plug-in di rendering per Unidrv deve implementare il metodo IPrintOemUni::EnablePDEV.
Il metodo IPrintOemUni::EnablePDEV esegue gli stessi tipi di operazioni dell'funzione DrvEnablePDEV esportata da una DLL grafica della stampante. Il suo scopo è consentire a un plug-in di rendering di creare la propria struttura PDEV. Per altre informazioni sulle strutture PDEV, vedere Customd PDEV Structures.)
Se si fornisce un plug-in di rendering che esporta il metodo IPrintOemUni::EnablePDEV, la DLL grafica della stampante undrv chiama il metodo dall'interno del relativo funzione DrvEnablePDEV.
Il metodo IPrintOemUni::EnablePDEV deve allocare un'istanza della struttura PDEV privata, inizializzarla e restituirne l'indirizzo come parametro pDevO em del metodo. Altri metodi plug-in ricevono l'indirizzo come membro pdevOEM della struttura DEVOBJ.
Il membro pdevOEM della struttura DEVOBJ non viene utilizzato con il metodo IPrintOemUni::EnablePDEV.
Le strutture a cui punta il phsurfPatterns, pGdiInfoe pDevInfo valori dei parametri sono gli stessi ricevuti dalla funzione DrvEnablePDEV di Unidrv. Il plug-in di rendering può modificare il contenuto della struttura in base alle esigenze. Può fornire modelli di riempimento della superficie ottenendo handle di superficie tipizzato HSURF e posizionandoli nel buffer a cui punta phsurfPatterns. I tipi di pattern di riempimento e l'ordine di handle sono elencati nella descrizione di DrvEnablePDEV.
La struttura DRVENABLEDATA a cui punta pded contiene gli indirizzi delle funzioni DDI grafiche fornite dalla DLL grafica della stampante Unidrv. È possibile fornire funzioni di hook personalizzate nel plug-in per queste funzioni DDI grafiche. Il contenuto della struttura DRVENABLEDATA consente alle funzioni di hooking personalizzate di richiamare le funzioni DDI grafiche del driver. Per altre informazioni, vedere Funzioni DDI grafica personalizzate.
Fabbisogno
| Requisito | Valore |
|---|---|
| piattaforma di destinazione | Desktop |
| intestazione | prcomoem.h (include Prcomoem.h) |