19 votes

Exécuter des fichiers MSI en tant qu'administrateur à partir d'un compte utilisateur

Je suis généralement connecté en tant qu'utilisateur normal sur mon ordinateur Windows XP. Parfois, lorsque je veux installer une mise à jour logicielle, je ne veux pas me déconnecter et me reconnecter en tant qu'administrateur, mais je clique avec le bouton droit sur l'installeur exe et je choisis "Exécuter en tant que..." pour l'exécuter à partir de mon compte administrateur. Cependant, cette option semble uniquement exister pour les fichiers exe, pas pour les fichiers msi.

Y a-t-il un moyen de faire fonctionner les fichiers msi sous un compte différent? Ou n'est-ce pas recommandé pour une raison particulière?

0 votes

Lancez simplement l'installation du fichier MSI à partir d'une invite de commandes élevée (clic droit sur cmd.exe et sélectionnez "exécuter en tant qu'administrateur"). Installez avec une ligne de commande quelque chose comme ceci : msiexec.exe /I "MonFichier.msi" /QN /L*V "C:\msilog.log" (mettez à jour les chemins appropriés). Runas devrait fonctionner correctement, mais je trouve simplement qu'une invite de commandes élevée est plus facile.

25voto

fretje Points 10660

. Les fichiers .msi peuvent être exécutés avec msiexec.exe, donc en combinaison avec la commande runas, vous pourriez accomplir ce que vous voulez:

runas /user:administrator "msiexec /i "

Comme il est recommandé d'utiliser un chemin complet vers le fichier, il pourrait nécessiter des guillemets autour et vous devez les échapper avec un backslash \:

runas /user:administrator "msiexec /i \"\""
                                      ^^                               ^^

0 votes

0 votes

Ah merci, je n'avais pas vérifié serverfault. @fretje: Merci, cependant j'ai d'abord reçu un message d'erreur indiquant que msiexec ne pouvait pas ouvrir le fichier msi. Il semble que vous devez spécifier le chemin complet vers le fichier msi. Le répertoire actuel à partir duquel runas est exécuté n'est pas transmis à la commande qui est exécutée, dans ce cas msiexec (ce qui a du sens).

0 votes

Il semble que vous devriez également pouvoir simplement utiliser msiexec /a package.msi -- voir la page msiexec sur TechNet (qui indique que c'est pour Server 2003, mais semble identique au contenu de la page correspondante dans le système d'aide XP).

6voto

Sam Points 251

Vous pouvez toujours ouvrir une invite de commandes en tant qu'administrateur (soit clic droit exécuter en tant que ou démarrer->exécuter->runas /user:administrateur cmd), changez vers le répertoire où se trouve votre MSI, et exécutez msiexec /i produit.msi

Ou ajoutez ceci à votre registre: HKEY_CLASSES_ROOT\Msi.Package\shell\runas\command Valeurs: Installer en tant que... HKEY_CLASSES_ROOT\Msi.Package\shell\runas\command Valeur: msiexec /i "%1"

0voto

codemac Points 689

Jetez un coup d'œil à runas depuis la ligne de commande. Vous pouvez lancer n'importe quoi sous le compte spécifié.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X