2017-03-29 4 views
0

Comment puis-je vérifier si mon programme s'exécute en tant qu'administrateur sur un système Windows 7, en utilisant C?Nécessite un programme pour s'exécuter en tant qu'admin

Dans le lot que je pouvais faire quelque chose le long des lignes de:

whoami /groups | findstr /b /c:"Mandatory Label\High Mandatory Level" | findstr /c:"Enabled group" > nul: && set IS_ELEVATED=1 
    if %IS_ELEVATED%==0 (
     set /p _="You need to run Utilis as administrator, run with admin cmd. Press enter to exit.. 
    ) 

Cela vérifiera si l'utilisateur actuel est un administrateur ou non. Comment puis-je obtenir le même concept en C?

+0

En définissant les propriétés de l'exécutable afin qu'il ne puisse être exécuté que par l'administrateur? –

+0

@WeatherVane Cela pourrait fonctionner, y a-t-il un moyen de le faire à partir du programme lui-même? – jakehimton

+0

Désolé, je n'ai jamais essayé ça. –

Répondre

1

Je suggère que si vous définissez les propriétés et les autorisations de l'exécutable, de sorte qu'il peut seulement être exécuté par l'administrateur, cela pourrait résoudre le problème.