2017-06-29 8 views
0

J'ai créé une configuration MBA dans WiX 3.11. Dans mon interface utilisateur d'installation, j'ai besoin d'accéder au registre et affichera les valeurs de registre dans l'interface utilisateur. Si j'exécute la configuration en mode administrateur (clic droit -> "Exécuter en tant qu'administrateur"), le programme d'installation lit l'entrée de registre. Mais si ce n'est pas en mode administrateur, il montre une erreur. Existe-t-il des options disponibles dans WiX Burn pour lancer l'installation dans UAC lors de la configuration double-clic?Lancer l'application Bootstrapper Managed EXE dans Admin Privilege

Merci

+1

Comment lisez-vous le registre? Si c'est par code, pouvez-vous demander moins d'autorisations lors de l'ouverture de la clé? Généralement, les privilèges administratifs ne devraient pas être requis pour cela. –

+0

Lecture des valeurs de registre à l'aide du code C#. – user3309953

+0

Ensuite, je suggère de confirmer que le code de registre C# fonctionne lorsqu'il n'est pas élevé. (Peut-être déboguer dans une application autonome.) Faire le bootstrap toujours élever devrait être un dernier recours. –

Répondre

0

Malheureusement, il n'y a pas une façon intégrée pour faire une course de MBA élevée. C'est quelque chose que les responsables de WiX ont dit ne pas vouloir faire. Généralement, vous pouvez la plupart des choses sans (à la grande exception de l'interrogation des paramètres IIS) et vous laisser MSI s'élever eux-mêmes lors de l'installation (si nécessaire).

Cependant, il y a des moments où vous avez vraiment besoin de l'élévation du MBA lui-même. Puisque vous ne pouvez pas élever un processus déjà en cours d'exécution, vous avez généralement deux options:

  • modifier fichier manifest intégré du MBA de l'obliger à élever immédiatement
  • ont le processus MBA de spin un autre processus d'arrière-plan qui fonctionne élevé et que les deux processus communiquent entre eux.

Je l'ai utilisé comme un outil ResourceTuner Console pour modifier le fichier manifeste après qu'il est construit, mais il faut savoir que, parfois, il en résulte un MBA qui ne trouve pas qu'il est intégré MSIs. Il crée également des points de douleur importants si vous utilisez également la signature de code avec votre installateur, car la modification du MBA invalidera votre signature.