Führen Sie MSI-Dateien als Administrator über ein Benutzerkonto aus

57615
Tim Pietzcker

Ich bin normalerweise als normaler Benutzer in meiner Windows XP-Box angemeldet. Manchmal, wenn ich ein Software-Update installieren möchte, möchte ich mich nicht als Administrator abmelden und erneut anmelden. Ich klicke jedoch mit der rechten Maustaste auf das Installationsprogramm und wähle "Ausführen als ...", um es von meinem Administratorkonto aus auszuführen . Diese Option scheint jedoch nur für Exe-Dateien zu existieren, nicht für MSI-Dateien.

Gibt es eine Möglichkeit, MSI-Dateien unter einem anderen Konto auszuführen? Oder ist das aus irgendeinem Grund nicht ratsam?

18
** Starten Sie einfach die Installation der MSI-Datei über eine Eingabeaufforderung mit erhöhten Rechten ** (klicken Sie mit der rechten Maustaste auf ** cmd.exe ** und wählen Sie "Als Administrator ausführen"). Installieren Sie mit einer Befehlszeile Folgendes: `` msiexec.exe / I "MyFile.msi" / QN / L * V "C: \ msilog.log" `` `(Aktualisieren Sie ggf. die Pfade). Runas sollte funktionieren, ich finde einfach eine erhöhte Eingabeaufforderung einfacher. Stein Åsmul vor 7 Jahren 0

3 Antworten auf die Frage

24
fretje

MSI-Dateien können mit msiexec.exe ausgeführt werden. In Kombination mit dem Befehl runas können Sie also erreichen, was Sie möchten:

runas /user:administrator "msiexec /i <path and filename of your msi>" 

Da ein vollständiger Pfad zu der Datei empfohlen wird, sind möglicherweise Anführungszeichen erforderlich, und Sie müssen sie dann mit einem Backslash schützen \:

runas /user:administrator "msiexec /i \"<path and filename of your msi>\"" ^^ ^^ 
verwandt: http://serverfault.com/questions/19341/how-do-i-run-a-msi-installer-mit-elevated-priviledges-on-windows hyperslug vor 15 Jahren 0
Ah danke, hatte Serverfehler nicht überprüft. @ fretje: Danke, allerdings bekam ich zuerst eine Fehlermeldung, dass msiexec die msi-Datei nicht öffnen konnte. Es scheint, dass Sie den gesamten Pfad zur MSI-Datei angeben müssen. Das aktuelle Verzeichnis, aus dem runas ausgeführt wird, wird nicht an den gerade ausgeführten Befehl übergeben, in diesem Fall msiexec (was sinnvoll ist). Tim Pietzcker vor 15 Jahren 0
@ Tim: Ok, danke, die Antwort wurde aktualisiert. fretje vor 15 Jahren 0
Anscheinend sollten Sie auch `msiexec / a package.msi` verwenden können - siehe [die` msiexec`-Seite auf TechNet] (http://technet.microsoft.com/de-de/library/cc759262). aspx # BKMK_UseAdmin) (was besagt, dass es sich auf Server 2003 bezieht, aber mit dem Inhalt der entsprechenden Seite im XP-Hilfesystem identisch ist). SamB vor 13 Jahren 0
@SamB: [Administrative Installation] (http://msdn.microsoft.com/de-de/library/aa367541 (v = vs.85) .aspx) bedeutet lediglich die Installation eines Images einer lokalen Installationsquelle im Netzwerk, wo sich andere befinden kann dann die Anwendung auf ihrem Computer installieren (anstatt eine CD-ROM zu verwenden). Der Benutzer kann dann wählen, ob er von der Quelle ausgeführt werden soll, wenn er installiert wird und das Installationsprogramm die meisten Produktdateien direkt aus dem Netzwerk verwendet. Das bedeutet also nicht das OP (als Administrator ausgeführt). fretje vor 13 Jahren 0
@fretje: Oh ... das ist verwirrend! SamB vor 13 Jahren 0
6
Sam

Sie können eine Eingabeaufforderung immer als Administrator öffnen (entweder mit der rechten Maustaste auf runas oder start-> run-> runas / user: administrator cmd klicken), in das Verzeichnis wechseln, in dem sich Ihre MSI befindet, und msiexec / i product.msi ausführen

Oder fügen Sie dies Ihrem Register hinzu: HKEY_CLASSES_ROOT \ Msi.Package \ shell \ runas \ command Werte: Installieren und als ... HKEY_CLASSES_ROOT \ Msi.Package \ shell \ runas \ command Wert: msiexec / i "% 1"

0
Richard

Schauen Sie sich runasdie Befehlszeile an. Sie können alles unter dem angegebenen Konto starten.