Condividi tramite


Restituzione di codici di errore da funzioni COPP

Questa sezione si applica solo a Windows Server 2003 SP1 e versioni successive e Windows XP SP2 e versioni successive.

CoPP DDI può restituire i tipi di codici di errore seguenti:

  • Codici di errore definiti nel file di intestazione winerror.h e sono comuni a tutte le applicazioni Windows. Questi codici di errore di Windows iniziano con il prefisso E_.

  • Codici di errore definiti nel file di intestazione ddraw.h e sono univoci per DirectDraw. Questi codici di errore DirectDraw iniziano con il prefisso DDERR_.

Nessun codice di errore è univoco per l'DDI COPP.

Quando si implementa coPP DDI, è consigliabile limitare l'utilizzo dei codici di errore di Windows ai seguenti:

  • E_UNEXPECTED

    Il driver di visualizzazione è in uno stato non valido. Ad esempio, la funzione COPPSequenceStart è stata chiamata prima della funzione COPPKeyExchange .

  • E_INVALIDARG

    I parametri di input passati al driver non sono validi.

  • E_POINTER

    Un parametro di output, che deve puntare a un indirizzo valido, è NULL.

CoPP DDI può restituire i codici di errore E_FAIL e DDERR_GENERIC; tuttavia, perché non indicano cosa ha causato l'errore, il loro uso è scoraggiato.

La sezione Osservazioni per ogni funzione COPP specifica i codici di errore DDERR_ che la funzione COPP può segnalare. Non è necessario che il COPP DDI restituisca altri codici di errore DDERR_.

Quando si propagano informazioni sull'errore dalla funzione COPP DDI nel driver di miniport video al driver di visualizzazione, non è consigliabile usare il valore restituito dalla funzione EngDeviceIoControl, perché il kernel di Windows modifica il valore di errore restituito dall'IOCTL a EngDeviceIoControl. Le informazioni sugli errori devono invece essere passate tramite il parametro lpInBuffer di EngDeviceIoControl. Per altre informazioni, vedere Chiamata di COPP DDI dal driver di visualizzazione e dal codice di esempio nel modello di driver miniport video COPP e esecuzione di operazioni COPP.