C28164
warning C28164: L'argomento viene passato a una funzione per cui è atteso un puntatore ad un oggetto (non un puntatore ad un altro puntatore).
Questo avviso viene visualizzato quando un puntatore a un puntatore viene utilizzato in una chiamata a una funzione che prevede un puntatore a un oggetto.
La funzione accetta PVOID in questa posizione.In genere, ciò indica la possibilità che sia stato utilizzato &pXXX quando è invece richiesto pXXX.
Alcune funzioni polimorfiche (funzioni che possono valutare, e essere applicate a, valori di tipi diversi) vengono implementate in C mediante un argomento PVOID che accetta qualsiasi tipo di puntatore.Tuttavia, questo consente al programmatore di codificare un puntatore a un puntatore senza provocare un errore del compilatore, anche quando questo tipo non è appropriato.
Esempio
Il seguente codice di esempio genera questo warning:
PFAST_MUTEX pFm;
...
KeWaitForSingleObject(&pFm, UserRequest, UserMode, false, NULL);
L'esempio di codice seguente consente di evitare l'avviso:
PFAST_MUTEX pFm;
...
KeWaitForSingleObject(pFm, UserRequest, UserMode, false, NULL);