Comment faire un travail de configuration pour une utilisation limitée (non-administrateur) utilisateurs
J'ai fait une Installation de Visual Studio Projet avec Visual Studio 2008 (SP1) pour un Office 2007 AddIn. Le programme d'installation copie uniquement les fichiers un par l'emplacement de l'utilisateur (LocalAppData) et écrit uniquement les paramètres de registre HKEY_CURRENT_USER, mais lors de l'exécution sous Windows 7, la MSI demande des informations d'identification administrateur juste avant qu'il commence à copier les fichiers. Le programme d'installation fonctionne parfaitement exécute sous un compte d'utilisateur limité sur Windows XP, mais sous Windows 7, des privilèges d'administrateur semblent être nécessaires.
Je n'ai pas été en mesure de trouver un moyen de supprimer l'admin élévation de l'exigence et je veux savoir comment le faire, ou si il n'est pas possible de le faire avec un programme d'Installation Visual Studio Projet.
** Mise à JOUR 2010-11-03 (plus de détails) **
Quand je construire le programme d'Installation Visual Studio Projet, il crée un setup.exe et d'un fichier MSI. Visual Studio 2008 ne semble pas me donner un contrôle adéquat de la façon dont le setup.exe de la création ou de la façon dont le fichier MSI est créé. L'setup.exe le fichier semble être seulement pour l'installation des prérequis que mon Office 2007 AddIn peut-être besoin. C'est le fichier MSI, qui peuvent fonctionner de manière indépendante, qui installe le réel Office 2007 AddIn. Je veux apprendre comment marquer le fichier MSI, telles qu'il ne demande pas de privilèges d'administrateur, parce que mon fichier MSI copie uniquement les fichiers à l'emplacement et à l'écrit uniquement les paramètres de registre HKEY_CURRENT_USER.
J'ai marqué comme LUA parce que je pensais que LUA signifiait "Compte d'Utilisateur Limité"
OriginalL'auteur Mike W | 2010-11-02
Vous devez vous connecter pour publier un commentaire.
Je crois que j'ai trouvé la réponse sur cette page:
http://blogs.msdn.com/b/rflaming/archive/2006/09/30/778690.aspx
Comment puis-je créer un Utilisateur Standard package?
Cela prend un peu de travail pour faire un paquet installer uniquement à l'emplacement d'un Utilisateur Standard dispose d'une autorisation. Certaines de ces exigences sont
Utiliser un Type 51 Action Personnalisée dans la InstallUISequence toujours annuler la ALLUSERS (l'option-l'utilisateur)
Fichiers doit être écrit uniquement pour les dossiers Standard de l'Utilisateur a accès. En supposant que le ALLUSERS est toujours défini sur le paramètre par utilisateur, vous pouvez utiliser le redirigeables b propriétés du dossier, mais pas ProgramFilesFolder qu'il ne redirige pas sur par utilisateur.
Installer l'application à un endroit sous LocalAppDataFolder.
Tous les paramètres de registre doit être écrite à HKCU qui est à 1 dans le Registre de la Table de la Racine de la colonne.
Flip bit 3 du mot compter de la propriété dans le flux des informations de synthèse de signal pas de justificatif d'identité est requise.
Si vous avez un programme d'amorçage (généralement le nom de setup.exe), manifeste de la requestedExecutionLevel pour exécuter asInvoker.
Passer de la GLACE de la Validation de l'ICEs ont contrôles de mal de mélange par utilisateur et par état de la machine.
Tester à la fois à partir d'un compte d'Utilisateur Standard et à partir d'une invite de commande élevée pour confirmer le comportement.
De fournir à vos utilisateurs de la documentation de l'utilisateur spécifiques à la nature de l'emballage que c'est atypique dans l'aujourd'hui de l'application s'installe.
REMARQUE: l'Étape 5 peut être fait à l'aide d'Orca, Microsoft MSI outil de montage. Ouvrir le fichier MSI dans Orca, sélectionnez Affichage-->Résumé de l'Information... puis cochez la case "Compatibles" case à cocher.
NOTE #2: l'Étape 5 peut être fait à l'aide de la WiSumInf.vbs exemple de fichier de script inclus dans le kit de développement Microsoft: C:\Program Files\Microsoft SDKs\Windows\v7.0\Samples\sysmgmt\msi\scripts\WiSumInf.vbs
NOTE #3: Étape 1 semble être pris en charge dans Visual Studio Étape du Projet en cliquant-droit sur le projet d'installation, choisir Affichage-->de l'Interface Utilisateur, l'obtention de propriétés pour l "Installer/Lancer/Dossier d'Installation" et de la page de réglage "InstallAllUsersVisible" pour de Faux.
NOTE n ° 4: Encore une autre façon de faire l'Étape 5, l'utilisation de la MsiInfo.exe outil inclus dans le "kit de développement logiciel Windows Composants pour le programme d'installation de Windows Développeurs" http://msdn.microsoft.com/en-us/library/aa370310(SV.85).aspx
Plus de la NOTE n ° 4: en Supposant que vous utilisez des noms de fichiers longs et compressées (comportement par défaut pour un MSI) le PostBuildEvent commande serait quelque chose comme:
Noter que vous devrez modifier le chemin d'accès à la MsiInfo pour correspondre à celui qu'il a dans votre système.
OriginalL'auteur Mike W
Si votre installateur est nommé 'setup.exe" ou "install.exe', Win7 "sait", c'est un installateur et de l'exécuter en "administrateur" mode par défaut. Vous aurez besoin d'ajouter un manifeste de votre installateur (interne ou externe) pour lui dire de courir avec moins d'autorisations.
Un exemple manifeste à partir de MSDN est indiqué ci-dessous. Modifier la valeur de 'IsUserAdmin' à votre nom du programme, puis l'enregistrer en tant que 'executablename.exe.manifeste " dans le dossier à côté de l'exe.
Voir l'article ici pour plus d'informations.
OriginalL'auteur DaveE