Puis-je empêcher un exécutable de demander l’élévation UAC?

J’ai un installateur que je voudrais lancer depuis un script. Le programme d’installation demande une élévation UAC, mais il ne nécessite pas d’élévation car je m’installe dans un répertoire utilisateur. Existe-t-il un moyen d’exécuter le programme d’installation pour qu’il ne demande pas d’élévation UAC?

Le script est écrit en Python pour que je puisse accéder à l’API Windows via des ctypes.

Changer le programme d’installation n’est pas une option.

Vous devez définir la variable enviromnet __compat_layer pour votre processus sur RunAsInvoker . Ensuite, vous pouvez exécuter l’exécutable sans aucune invite UAC.

Vous pouvez utiliser la fonction API Windows SetEnvironmentVariable à cette fin.