Metodo IPrintOemPS::Command (prcomoem.h)
Il metodo IPrintOemPS::Command viene usato eseguendo il rendering dei plug-in per il driver della stampante Microsoft PostScript, per inserire i comandi PostScript nel flusso di dati del processo di stampa.
Sintassi
HRESULT Command(
PDEVOBJ pdevobj,
DWORD dwIndex,
PVOID pData,
DWORD cbSize,
[out] OUT DWORD *pdwResult
);
Parametri
pdevobj
Puntatore fornito dal chiamante a una struttura DEVOBJ .
dwIndex
Valore fornito dal chiamante che rappresenta il punto di inserimento corrente all'interno del flusso di dati del processo di stampa. Per ulteriori informazioni, vedere la sezione Osservazioni successiva.
pData
Non usato.
cbSize
Non usato.
[out] pdwResult
Riceve un valore fornito dal metodo che indica il risultato dell'operazione di inserimento. Se l'inserimento ha esito positivo, questo valore deve essere ERROR_SUCCESS. Se l'inserimento ha esito negativo, il valore deve essere uno dei codici di errore definiti in winerror.h. Se il metodo non tenta di inserire dati per un valore dwIndex specificato, il valore deve essere ERROR_NOT_SUPPORTED.
Valore restituito
Il metodo deve restituire uno dei valori seguenti.
Codice restituito | Descrizione |
---|---|
|
Operazione completata. |
|
Operazione non riuscita |
|
Il metodo non è implementato. |
Commenti
Il metodo IPrintOemPS::Command viene usato per inserire i comandi PostScript nel flusso di dati generato dal driver della stampante Microsoft PostScript. Se si vuole fornire questo metodo, è necessario definirlo in un plug-in di rendering.
Quando viene chiamato il metodo IPrintOemPS::Command , il parametro dwIndex specifica il punto di inserimento corrente all'interno del flusso di dati del processo di stampa. Il metodo deve usare questo valore per determinare l'operazione, se presente, da eseguire. I valori di indice, definiti in wingdi.h, sono elencati nella tabella seguente.
Valore indice | Quando ricevuto |
---|---|
PSINJECT_BEGINDEFAULTS | Dopo che il driver della stampante invia %%BeginDefaults al flusso di dati. |
PSINJECT_BEGINPAGESETUP | Dopo che il driver della stampante invia %%BeginPageSetup al flusso di dati. |
PSINJECT_BEGINPROLOG | Dopo che il driver della stampante invia %%BeginProlog al flusso di dati. |
PSINJECT_BEGINSETUP | Dopo che il driver della stampante invia %%BeginSetup al flusso di dati. |
PSINJECT_BEGINSTREAM | Prima che il driver della stampante invii il primo byte del flusso di dati. |
PSINJECT_BOUNDINGBOX | Quando il driver della stampante è pronto per inserire %%BoundingBox: nel flusso di dati. I dati forniti da IPrintOemPS::Command sostituisce il commento %%BoundingBox del driver. |
PSINJECT_COMMENTS | Prima che il driver della stampante invii %%EndComments al flusso di dati. |
PSINJECT_DLFONT | Prima che il driver di stampa scarica un carattere morbido. |
PSINJECT_DOCNEEDEDRES |
Dopo che il driver della stampante invia %%DocumentNeedResources: al flusso di dati, insieme alle informazioni sulle risorse. Se il metodo IPrintOemPS::Command invia informazioni sulla risorsa, viene aggiunto al flusso dopo le informazioni sulla risorsa del driver. Il formato di voce è il seguente: %%+ResourceTypeResourceNames Il driver della stampante invia %%DocumentNeedResources: dopo l'invio della sezione %%Trailer . |
PSINJECT_DOCSUPPLIEDRES |
Dopo che il driver della stampante invia %%DocumentSuppliedResources: al flusso di dati, insieme alle informazioni sulle risorse. Se il metodo IPrintOemPS::Command invia informazioni sulla risorsa, viene aggiunto al flusso dopo le informazioni sulla risorsa del driver. Il formato di voce è il seguente: %%+ResourceTypeResourceNames Il driver della stampante invia %%DocumentSuppliedResources: dopo l'invio della sezione %%Trailer . |
PSINJECT_DOCUMENTPROCESSCOLORS | |
Quando il driver della stampante è pronto per inserire %%DocumentProcessColors:color nel flusso di dati. I dati forniti da IPrintOemPS::Command sostituisce il commento %%DocumentProcessColors:color del driver. | |
PSINJECT_DOCUMENTPROCESSCOLORSATEND | |
Quando il driver della stampante è pronto per inserire %%DocumentProcessColors:(atend) nel flusso di dati. I dati forniti da IPrintOemPS::Command sostituisce il commento %%DocumentProcessColors:(atend). | |
PSINJECT_ENDDEFAULTS | Prima che il driver della stampante invii %%EndDefaults al flusso di dati. |
PSINJECT_ENDPAGECOMMENTS | Prima che il driver della stampante invii %%EndPageComments al flusso di dati. |
PSINJECT_ENDPAGESETUP | Prima che il driver della stampante invii %%EndPageSetup al flusso di dati. |
PSINJECT_ENDPROLOG | Prima che il driver della stampante invii %%EndProlog al flusso di dati. |
PSINJECT_ENDSETUP | Prima che il driver della stampante invii %%EndSetup al flusso di dati. |
PSINJECT_ENDSTREAM | Dopo che il driver della stampante invia l'ultimo byte del flusso di dati. |
PSINJECT_EOF | Dopo che il driver della stampante invia %%EOF al flusso di dati. |
PSINJECT_ORIENTATION | Quando il driver della stampante è pronto per inserire %%Orientamento: nel flusso di dati. I dati forniti da IPrintOemPS::Command sostituisce il commento %%Orientation del driver. |
PSINJECT_PAGEBBOX | Quando il driver della stampante è pronto per inserire %%PageBoundingBox: nel flusso di dati. I dati forniti da IPrintOemPS::Command sostituisce il commento %%PageBoundingBox del driver. |
PSINJECT_PAGENUMBER | Quando il driver della stampante è pronto per inserire %%Page: nel flusso di dati. I dati forniti da IPrintOemPS::Command sostituisce il commento %%Page del driver. |
PSINJECT_PAGEORDER | Quando il driver della stampante è pronto per inserire %%PageOrder: nel flusso di dati. I dati forniti da IPrintOemPS::Command sostituisce il commento %%PageOrder del driver. |
PSINJECT_PAGES | Quando il driver della stampante è pronto per inserire %%Pages:nnn nel flusso di dati. I dati forniti da IPrintOemPS::Command sostituisce il commento %%Pages:nnn del driver. |
PSINJECT_PAGESATEND | Quando il driver della stampante è pronto per inserire %%Pages:(atend) nel flusso di dati. I dati forniti da IPrintOemPS::Command sostituiscono il commento %%Pages:(atend) del driver. |
PSINJECT_PAGETRAILER | Dopo che il driver della stampante ha inviato %%PageTrailer al flusso di dati. |
PSINJECT_PLATECOLOR | Quando il driver della stampante è pronto per inserire %%PlateColor:color nel flusso di dati. I dati forniti da IPrintOemPS::Command sostituiscono il commento %%PlateColor:color del driver. |
PSINJECT_PSADOBE | Prima che il driver della stampante invii %! PS-Adobe al flusso di dati. |
PSINJECT_SHOWPAGE | Prima che il driver della stampante invii un comando showpage . |
PSINJECT_TRAILER | Dopo che il driver della stampante invia %%Trailer al flusso di dati. |
PSINJECT_VMRESTORE | Dopo che il driver della stampante invia un comando di ripristino . Il metodo IPrintOemPS::Command deve inviare nuovamente tutte le risorse inviate dopo l'ultimo PSINJECT_VMSAVE, se le risorse verranno riutilizzate. |
PSINJECT_VMSAVE | Prima che il driver della stampante invii un comando di salvataggio . Vedere PSINJECT_VMRESTORE. |
Il metodo IPrintOemPS::Command deve chiamare IPrintOemDriverPS::D rvWriteSpoolBuf per inserire i comandi PostScript.
Se i metodi IPrintOemPS::Command vengono esportati da più plug-in di rendering, i metodi vengono chiamati nell'ordine in cui vengono specificati i plug-in per l'installazione, ogni volta che il driver della stampante raggiunge un punto di inserimento. Sono applicabili le regole seguenti:
Se il punto di inserimento è uno per cui i dati forniti vengono aggiunti ai dati forniti dal driver della stampante, ogni plug-in viene chiamato e ogni plug-in può aggiungere comandi PostScript.
Se il punto di inserimento è uno per il quale i dati forniti sostituiscono i dati forniti dal driver della stampante, i plug-in vengono chiamati finché un metodo IPrintOemPS::Command non fornisce ERROR_SUCCESS per dwResult. Non vengono chiamati altri plug-in. Se tutti i plug-in forniscono ERROR_NOT_SUPPORTED, i dati forniti dal driver non vengono sostituiti.
Se il punto di inserimento è uno per il quale i dati forniti sostituiscono i dati forniti dal driver della stampante e se un'applicazione ha già sostituito i dati forniti dal driver utilizzando la funzione di escape della stampante POSTSCRIPT_INJECTION, non vengono chiamati plug-in.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Desktop |
Intestazione | prcomoem.h (include Prcomoem.h) |
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per