Exécuter des applications Java en tant qu'administrateur
En Java, il est possible de demander des privilèges d'administrateur pour votre application sans avoir besoin d'une saisie manuelle de l'utilisateur. Ceci est réalisé en créant un fichier manifeste qui définit les exigences de l'application.
Création du fichier manifeste
Pour créer le fichier manifeste, utilisez un éditeur XML tel que Notepad . Le manifeste doit avoir le format suivant :
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <manifest xmlns="urn:schemas-microsoft-com:asm.v1"> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3"> <security> <requestedPrivileges> <requestedExecutionLevel level="requireAdministrator" /> </requestedPrivileges> </security> </trustInfo> </assembly> </manifest>
Intégration du manifeste
Vous pouvez intégrer le manifeste dans le fichier JAR en utilisant l'option -manifest lors de la compilation :
jar -cvfm myapp.jar META-INF/MANIFEST.MF myapp/*.class
Vous pouvez également externaliser le manifeste sous la forme d'un fichier distinct nommé myapp.exe.manifest. Dans ce cas, spécifiez le manifeste dans l'entrée Main-Class du manifeste d'origine :
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <manifest xmlns="urn:schemas-microsoft-com:asm.v1"> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <entryPoint> <assemblyIdentity version="1.0.0.0" name="myapp" type="win32" processorArchitecture="*" /> <commandLine file="myapp.exe" parameters="" /> </entryPoint> <dependency> <dependentAssembly> <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="*" publicKeyToken="6595b64144ccf1df" language="*" /> </dependentAssembly> </dependency> </assembly> </manifest>
En spécifiant le requestExecutionLevel dans le manifeste, votre application demandera à l'utilisateur les privilèges d'administrateur via la boîte de dialogue UAC lors de son exécution. .
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!