Auch wenn sie genaugenommen fehlerhaft sein mag, so hat sie (bei mir jedenfalls) bisher immer das gewünschte, also korrekte Ergebnis geliefert.
Das gewünschte Ergebnis hängt von der Fragestellung ab
Es macht einen erheblichen Unterschied, ob ich im aktuellen Kontext administrative Rechte
habe oder
haben könnte.
Im letzteren Fall würde man eher etwas wie "IsUserInAdminGroup" im
UAC self-elevation (CppUACSelfElevation)-Beispielprojekt von Microsoft schreiben.