Ich muss feststellen, ob mein Programm mit vollen Administratorrechten ausgeführt wird. Damit meine ich, wenn uac eingeschaltet ist (für win vista/7), dass ich feststellen muss, ob das Programm tatsächlich Adminrechte hat (wie wenn der Benutzer mit der rechten Maustaste klickt und "run as administrator" auswählt) und nicht durch uac eingeschränkt wird. Wie mache ich das in C++?Ermitteln, ob das Programm mit vollen Administratorrechten ausgeführt wird
17
A
Antwort
11
- Win9x: Jeder ist "admin"
- NT4: OpenThreadToken/OpenProcessToken + GetTokenInformation(...,TokenGroups,...) on DOMAIN_ALIAS_RID_ADMINS SID in a loop
- 2000+: Open/Open + CheckTokenMembership auf DOMAIN_ALIAS_RID_ADMINS SID
Andere Alternativen sind: IsUserAnAdmin oder AccessCheck
Das Überprüfen der TOKEN_ELEVATION * -Zeichen im Token ist nicht erforderlich, um den aktuellen Prozess zu testen, aber es ist nützlich, wenn Sie herausfinden müssen, ob der Benutzer erhöhen kann, weil er ein geteiltes Token usw. hat.
Verwandte Themen
- 1. C/C++ Ermitteln, ob ein Programm ausgeführt wird
- 2. Ermitteln Sie, ob ein Programm auf einem Remotedesktop ausgeführt wird
- 3. Ermitteln, ob ein Programm im Debug-Modus ausgeführt wird
- 4. Wie wird sichergestellt, dass das Setup-Programm mit Administratorrechten ausgeführt wird?
- 5. Überprüfen, ob ein Programm ausgeführt wird
- 6. Wie wird das angegebene Programm ausgeführt?
- 7. So ermitteln Sie, ob Git merge ausgeführt wird
- 8. Ermitteln, ob der Servlet-Container ausgeführt wird Eclipse Jetty
- 9. Ermitteln, ob auf der Site HTTPS ausgeführt wird
- 10. iPython reagiert nicht, während das Programm ausgeführt wird. Wird antworten, wenn das Programm beendet wird
- 11. So ermitteln Sie, ob Eclipse im Debug-Modus ausgeführt wird
- 12. Ermitteln, ob ein Prozess in lxc/Docker ausgeführt wird
- 13. Ermitteln, ob die Swift-App von Xcode ausgeführt wird
- 14. Ermitteln Sie dynamisch, ob Azure ausgeführt wird oder nicht?
- 15. So ermitteln Sie, ob eine Webanwendung gerade ausgeführt wird
- 16. Ermitteln Sie, ob ein Ruby-Skript bereits ausgeführt wird
- 17. Ermitteln, ob MATLAB startup.m auf einem Worker ausgeführt wird
- 18. erkennen, ob ein Programm über die Eingabeaufforderung ausgeführt wird
- 19. Inno-Setup: Erkennen, ob das Setup beim Deinstallieren ausgeführt wird
- 20. Python-Programm wird nicht ausgeführt
- 21. R-Skript: Ermitteln, ob das Skript in der GUI oder über die Befehlszeile ausgeführt wird
- 22. Wie fragt ein Programm nach Administratorrechten?
- 23. Ermitteln der Azure Web- oder Worker-Rolle? (Alternate: Ermitteln, ob in IIS ausgeführt wird?)
- 24. Ermitteln, ob das Gerät von jQuery Mobile unterstützt wird
- 25. JavaScript-Code zeigt undefined an, wenn das Programm ausgeführt wird
- 26. Wie überprüft man, ob das Programm unter Visual Studio-Kontrolle ausgeführt wird?
- 27. Wie überprüft man, ob das Programm von einem Autostart ausgeführt wird?
- 28. Lernen Python, stecken in GUI-Programm, das nicht ausgeführt wird
- 29. Wird ein Programm im Kompatibilitätsmodus ausgeführt?
- 30. Winforms-Steuerelement, das angibt, ob einzelner Prozess ausgeführt wird
Setzen Sie [Tags] nicht in die Betreffzeile. Dafür sind die Tags da. – abelenky
Sie können einfach die Operation ausführen, für die Sie die Rechte benötigen. – ruslik
möglich duplicate of [Wie überprüft man, ob ein Prozess Privilegien in Windows 7 mit nativem C++ erhöht hat?] (Http://stackoverflow.com/questions/4196552/how-to-check-if-a-process-has-elevated) -privileges-in-windows-7-using-native-c) –