J'ai une application qui sera déployée en tant que package MSI (authentifié dans WIX). P>
Je déciderai de spécifier s'il faut spécifier L'application n'inclut rien nécessitant des privilèges élevés en dehors de l'emplacement d'installation par défaut, qui est sous Fichiers de programme. P>
Maintenant le problème: P>
Si je spécifie Privilèges élevés B>, l'utilisateur est invitée par UAC pour le mot de passe administrateur lors de l'installation. Ceci n'est pas requis et empêche les utilisateurs non administratifs de l'installation. P> LI>
Si je spécifie privilèges limités b>, l'utilisateur est présenté avec une boîte de dialogue pour sélectionner l'emplacement d'installation avec les fichiers de programme code> étant par défaut. Si elles ne changent pas l'emplacement d'installation (95% des utilisateurs finaux ne le feront probablement pas), l'installateur échouera avec un message qu'il doit contacter l'administrateur ou exécuter l'application en tant qu'administrateur. S'ils lancent l'installateur en tant qu'administrateur, ils peuvent s'installer dans des fichiers de programme sans problème - mais la plupart des utilisateurs ne sauront probablement pas lancer un programme d'installation en tant qu'administrateur. P> LI>
ul>
Je peux potentiellement régler l'emplacement d'installation par défaut à par exemple. C: \ Nom de la société \ Program \, mais cela semble non standard pour moi et que la majorité des utilisateurs ne l'aimeront probablement pas (ils sont probablement utilisés pour installer dans des fichiers de programme). P>
Comment résolvez ce problème avec l'installation d'applications sous comptes d'utilisateurs limités? b> p> élevé code> ou
limité code> privilèges au besoin pour le programme d'installation. P>
3 Réponses :
L'emplacement alternatif que vous proposez, directement éteint du lecteur C, est susceptible de nécessiter également des privilèges élevés. Avant Windows 7, je suggérerais d'utiliser une action personnalisée précoce pour modifier votre emplacement par défaut pour des installations limitées. Conditionnez-le hors du Si vous pouvez cibler uniquement Windows 7 et ultérieurement, vous pouvez définir conditionnellement privilégié code> (ou éventuellement
adminuser code>), vérifiez si vous devez définir
msIuserAreDminindetection code> pour votre cas et utilisez quelque chose comme < Code> [LocalAppDatafolder] Société \ Produit Code>. Malheureusement, cette approche aboutira à un paquet difficile à installer pour tous les utilisateurs, car vous devez pré-élever et, dans le cas limité, ils pourraient toujours sélectionner un emplacement cible nécessitant une élévation. Ils doivent pré-élever parce que l'emballage doit être marqué pour ne pas élever. P>
MSIInstallPerreuse code> pour remplacer l'emplacement d'installation et l'élévation de l'élévation, et installez plutôt par utilisateur. Dans ce scénario, on pourrait demander à l'utilisateur d'installer pour tous les utilisateurs (nécessite une élévation) ou seulement pour lui-même. Le paquet peut être marqué pour l'élévation et la réglage
MSIInstallPerrUser code> remplacera et saute l'invite de l'UAC. P>
Non, l'emplacement alternatif ne nécessite pas de privilèges élevés. J'ins installe actuellement par défaut dans C: \ Nom de la société \ Produit et le programme d'installation MSI est conçu avec des privilèges limités et aucun UAC ne se présente, ni aucune boîte de dialogue d'erreur.
Cela ressemble à un environnement personnalisé alors, mais c'est bien si vous savez que ce produit sera mis en place n'importe où votre produit est installé. Le reste de la réponse s'applique; Ignorer simplement la suggestion de localisation de privilège limitée.
Exécuter l'invite de commande (CMD) en tant qu'administrateur. P>
Utilisez ensuite la commande msiexec pour exécuter un fichier MSI. P>
Je ne peux pas demander à l'utilisateur final de faire cela
u peut demander à l'utilisateur de faire cela ... comme pour l'installation de S / W ONT, il faut avoir des privilèges d'administration. Alors tu n'a rien de mal à lui demander de le faire. Ou vous pouvez utiliser l'utilisateur AKS pour vous connecter avec les informations d'identification d'administration, puis installez S / W
Il est probablement plus important que votre logiciel fonctionne avec des privilèges utilisateur normaux - que je vois que vous avez mentionné n'est pas un problème. P>
Il n'y a rien de mal à demander aux droits d'administration d'installer quelque chose. P>
L'utilisateur aura les détails eux-mêmes car ils exécutent un compte limité pour des raisons de sécurité ou le logiciel sera installé par le service informatique de leur entreprise de toute façon. P>