Condividi tramite


CDC::SetAbortProc

Installa la routine di interruzione per il processo di stampa.

int SetAbortProc(
   BOOL ( CALLBACK* lpfn )( HDC, int )
);

Parametri

Valore restituito

Specifica il risultato della funzione SetAbortProc.Alcuni dei valori seguenti sono più probabile di altri, ma tutti sono possibili.

  • Errore generale diSP_ERROR.

  • SP_OUTOFDISK insufficiente spazio su disco è attualmente disponibile per aggiungere e non risulterà più spazio disponibile.

  • SP_OUTOFMEMORY memoria insufficiente è disponibile per aggiungere.

  • L'utente diSP_USERABORT ha terminato il processo tramite il Print Manager.

Note

Se un'applicazione è consentire il processo di stampa essere interrotto durante l'aggiunta, deve impostare la funzione di interruzione prima che il processo di stampa sia avviato con la funzione membro StartDoc.Il Print Manager chiama la funzione di interruzione durante l'aggiunta per consentire l'applicazione annullare il processo di stampa o elaborare gli stati di pronto utilizzo disco spazio.Se nessuna funzione di interruzione è impostato, il processo di stampa non riuscirà se è insufficiente spazio su disco per aggiungere.

Si noti che le funzionalità di Microsoft Visual C++ semplificano la creazione della funzione di callback passata a SetAbortProc.L'indirizzo passato alla funzione membro EnumObjects è un puntatore a una funzione esportata con __declspec(dllexport) e con la convenzione di chiamata __stdcall.

Inoltre non è necessario esportare il nome di funzione in un'istruzione EXPORTS nei file di definizione moduli dell'applicazione.È possibile utilizzare il modificatore di funzione EXPORT, come in

BOOLCALLBACKEXPORT AFunction ( HDC, int);

affinché il compilatore a generare il record appropriato di esportazione per l'esportazione per nome senza alias.Questa procedura è valida per la maggior parte delle necessità.Per alcuni casi speciali, come esportare una funzione tramite ordinale o dall'alias l'esportazione, è necessario utilizzare un'istruzione EXPORTS in un file di definizione di modulo.

Le interfacce di callback di registrazione sono indipendenti dai tipi è necessario passare un puntatore a funzione che indica il tipo corretto di funzione per il callback specifico).

Si noti inoltre che tutte le funzioni di callback devono intercettare le eccezioni (Microsoft Foundation class) prima di restituire a Windows, poiché le eccezioni non possono essere generate oltre i limiti di callback.Per ulteriori informazioni sulle eccezioni, vedere l'articolo Eccezioni.

Requisiti

Header: afxwin.h

Vedere anche

Riferimenti

Classe CDC

Grafico della gerarchia