Question

Nous avons un programme d'installation pour notre application qui doit être téléchargé et exécuté avec les privilèges d'administrateur, comme beaucoup d'autres programmes d'installation. Cependant, le programme d'installation ne s'appelle pas "setup.exe", et Windows ne le détecte donc pas automatiquement comme nécessitant une élévation.

Franchement, changer le nom du programme d’installation pour que les choses se passent bien s’élève correctement. Cet article parle beaucoup de UAC et de l'élévation, et il dit que vous pouvez utiliser un manifeste pour que quelque chose nécessite une autorisation.

Nous aimerions donc créer un manifeste pour notre installateur. Cependant, comment pouvons-nous nous assurer que le manifeste est présent? Si l'utilisateur télécharge simplement notre_application_v13.exe, comment pouvons-nous nous assurer qu'il récupère également le manifeste? Autant que je sache, le manifeste devrait être un fichier nommé "notre_application_v13.exe.manifest". dans ce cas.

Puisqu'ils téléchargent simplement un fichier de notre site Web, comment pouvons-nous nous assurer qu'ils reçoivent également le manifeste? Pouvons-nous l'intégrer d'une manière ou d'une autre dans l'exécutable, ou indiquer à celui-ci qu'il nécessite une élévation? Nous utilisons un outil d’installation datant de centaines d’années que nous ne pouvons pas modifier. Il n’a donc aucune fonctionnalité pertinente à cet égard.

Merci!

Était-ce utile?

La solution

Si l'outil d'installation vous permet de modifier / attacher / modifier les ressources du fichier EXE généré, vous pouvez ajouter le fichier manifeste en tant que ressource avec un type de ressource de 24 (RT_MANIFEST dans les en-têtes de Windows) et un ID de ressource de 1.

Si l'outil d'installation ne dispose pas de la fonctionnalité intégrée pour insérer des ressources, vous devrez peut-être écrire un outil pour post-traiter votre fichier install.exe afin d'insérer la ressource. Recherchez les API Windows BeginUpdateResouce et EndUpdateResource. Ils ont certaines limitations - ils ont tendance à ne pas fonctionner si le fichier EXE ne contient pas encore de fichiers de ressources, mais la plupart des fichiers exe générés par l'outil d'installation contiennent au moins une ressource d'informations sur la version.

En outre, si l'installation est signée numériquement, cette opération devra être effectuée après l'insertion de la ressource manifeste.

mt. Le fichier exe fourni avec le kit de développement Platform SDK et la plupart des versions de visual studio offrent des options pour incorporer, extraire et fusionner les ressources du manifeste.

Autres conseils

Le manifeste peut également figurer dans la section des ressources natives de l'application (dans le fichier EXE).

Il existe une console du régleur de ressources de Heaventools Software.

  

Resource Tuner Console est un outil de ligne de commande qui permet aux développeurs d'automatiser le post-traitement de votre fichier exe install et d'insérer la ressource manifeste. Voir plus précisément la page Ajout du manifeste d'application pour plus de détails:

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top