Condividi tramite


Recupero dell'indirizzo di una tabella di funzioni virtuali

In un'applicazione scritta nel linguaggio di programmazione C è possibile recuperare l'indirizzo della struttura IAVIStreamVtbl usando la funzione NewBall. Questa funzione restituisce l'indirizzo di una struttura contenente un puntatore a IAVIStreamVtbl. Le informazioni seguenti al puntatore IAVIStreamVtbl specificano i dati usati internamente da AVIBall. Il gestore di flusso può aggiungere le proprie informazioni dopo il puntatore IAVIStreamVtbl . Queste informazioni vengono restituite nelle chiamate successive al gestore di flusso.

PAVISTREAM WINAPI NewBall(VOID) 
{ 
    PAVIBALL pball; 
    pball = (PAVIBALL) GlobalAllocPtr(GHND, sizeof(AVIBALL)); 
    if (!pball) 
        return 0; 
    pball->lpvtbl = &AVIBallHandler; 
    pball->lpvtbl->Create((PAVISTREAM) pball, 0, 0); 
    return (PAVISTREAM) pball; 
}