DLL konnte für MSI-Installer nicht ausgeführt werden


23

DLL konnte nicht ausgeführt werden

Ich vermute, es ist ein Problem mit Windows Installer. Ich habe versucht, den Dienst neu zu starten, aber ohne Wirkung. Ich kann nichts installieren, das mit .msi endet . Manchmal bekomme ich eine solche Fehlermeldung:

Bildbeschreibung hier eingeben

Protokolle der Ereignisanzeige:

Python-Installer:

Produkt: Python 2.7.3 - Fehler 1723. Mit diesem Windows Installer-Paket ist ein Problem aufgetreten. Eine für den Abschluss dieser Installation erforderliche DLL konnte nicht ausgeführt werden. Wenden Sie sich an Ihr Support-Personal oder den Paketanbieter. Aktion CheckDir, Eintrag: _CheckDir @ 4, Bibliothek: C: \ Users \ x \ AppData \ Local \ Temp \ MSI570C.tmp

SSDLife-Installationsprogramm:

Produkt: SSDlife Pro - Fehler 1723. Mit diesem Windows Installer-Paket ist ein Problem aufgetreten. Eine für den Abschluss dieser Installation erforderliche DLL konnte nicht ausgeführt werden. Wenden Sie sich an Ihr Support-Personal oder den Paketanbieter. Aktion WIX_TestVersion, Eintrag: WIX_TestVersion, Bibliothek: C: \ Users \ x \ AppData \ Local \ Temp \ MSIA32E.tmp

Auf Fehler 1723 suchen: Dieser Fehler kann auftreten, wenn Sie über eine veraltete Version von Windows Installer verfügen

Ich habe ein paar Links für Windows Installer, aber keiner von beiden hat Windows 7 auf der Liste der unterstützten Betriebssysteme.

https://www.microsoft.com/en-us/download/details.aspx?id=25 und

https://www.microsoft.com/en-us/download/details.aspx?id=8483&WT.mc_id=MSCOM_EN_US_DLC_DETAILS_131Z4ENUS22007

Windows (7 x 64) ist aktuell.

Versuchen Sie auch dieses Fixit: http://support.microsoft.com/mats/Program_Install_and_Uninstall

Es konnten jedoch keine Probleme gefunden werden.


@ Serge ja, avast, versucht, das Installationsprogramm jetzt zu deaktivieren und auszuführen, aber es scheint nicht zu helfen
Kedar

Bereinigen Sie Ihren temporären Ordner und versuchen Sie es erneut.
Moab

@ Moab Nö, das hilft nicht
Kedar

Bitte geben Sie das Betriebssystem an, unter dem Sie das Problem beobachten.
Alexey Ivanov

@ Moab alle von ihnen
Kedar

Antworten:


26

Ich bin auch auf dieses Problem gestoßen. Die Antwort von Alexey Ivanov hat mir nicht ganz geholfen, hat mich jedoch zu Nachforschungen inspiriert C:\Users\x\AppData\Local\Temp.

Fehlermeldungen waren wie immer nur zur Hälfte sinnvoll. In meinem Fall fehlte die DLL nicht - das Installationsprogramm hatte keine Zugriffsberechtigung für den Ordner . Ich habe nicht versucht, das Installationsprogramm als Administrator auszuführen. Dies hat für mich keinen Sinn ergeben, da ich bereits ein Administratorkonto verwendet habe und damit gerechnet hätte, dass die Benutzerkontensteuerung die Erhöhung der Berechtigungen übernimmt. Wie so viele Dinge in Windows ist auch dieses Ganze für mich ein Rätsel.

Nachdem Sie Properties > Securityden C:\Users\x\AppData\Local\TempOrdner überprüft und Everyonedie Full controlBerechtigung erteilt haben, funktionierten die zuvor fehlgeschlagenen Installationsprogramme jetzt! Hurra! Da ich Everyoneschon Zugriff hatte Readund Writevermute, hat das Full controlauch eine notwendige ExecuteErlaubnis dazu beigetragen.

Was ich mich jetzt frage, ist, wie das überhaupt passiert ist und wie die richtigen Berechtigungen für dieses Verzeichnis lauten sollen.


1
Das löst mein Problem! Ich halte es jedoch für ein Sicherheitsproblem, "Jedem" vollständigen Zugriff auf den temporären Ordner eines Benutzers zu gewähren. Ich habe mir nur den vollen Zugriff gewährt und das funktioniert. Standardmäßig hatte das Verzeichnis nur "Sonderberechtigungen" für den Benutzer.
Kedar

Ja, das ist sinnvoller als die Erlaubnis zu geben Everyone:-). Wie auch immer, ich frage mich, was die zugrunde liegende Ursache für dieses Problem sein kann. Ich hatte Probleme mit mehreren Installationsprogrammen, einschließlich des iTunes-Installationsprogramms - einem sehr beliebten Installationsprogramm! Ich frage mich, was passiert ist, dass Berechtigungen für dieses Verzeichnis verletzt.
Dmitry Minkovsky

Ich habe andere eingeschränkte Konten / Administratorkonten auf demselben Computer überprüft und alle scheinen die richtigen Berechtigungen zu haben.
Kedar

Dies hat bei mir nicht funktioniert (Windows 7, 32 Bit). Das tat es . Mein Fehler lautete jedoch "Es liegt ein Problem mit diesem Windows Installer-Paket vor. Ein Programm, das als Teil des Setups ausgeführt wurde, wurde nicht wie erwartet beendet. Wenden Sie sich an Ihren Support oder an den Hersteller des Pakets."
Aliteralmind

Das hat bei mir nicht funktioniert, obwohl die Symptome ähnlich waren. Es stellte sich heraus, dass es sich um eine in Konflikt stehende PIP-Installation handelt. Dies behebt
Jagu

8

Eine einfache Problemumgehung besteht darin, die Befehlsshell als Administrator auszuführen (suchen Sie einfach cmd.exe und klicken Sie dann mit der rechten Maustaste auf -> Als Administrator ausführen). Wechseln Sie dann zum Speicherort des MSI-Pakets und führen Sie es aus msiexec /i packagename.msi. Es hat bei mir funktioniert.


1
Es ist keine Problemumgehung (installiert die gesamte Software nicht ordnungsgemäß), und es funktioniert nicht (für dieses spezielle Problem)
Kedar

Ein kleiner Fehler: Hier ist der richtige Befehlmsiexec /i packagename.msi

Diese Lösung funktioniert einwandfrei und ist besser, als nur für ein Installationsprogramm die vollständigen Berechtigungen des Ordners "Temp" an alle zu vergeben. (Lesen Sie unbedingt den zweiten Kommentar für die korrekte Syntax.)
Gaurav Kumar

+1 Diese Lösung sollte auch in der oben gewählten Antwort enthalten sein. Diese gewählte Antwort sollte der letzte Ausweg für alle sein.
tom_mai78101

1

In Ihrem System muss eine erforderliche DLL fehlen.

In beiden von Ihnen beschriebenen Fällen hat Windows Installer versucht, eine benutzerdefinierte Aktion in einer DLL auszuführen. Diese .tmp-Dateien: C:\Users\x\AppData\Local\Temp\MSI570C.tmpund C:\Users\x\AppData\Local\Temp\MSIA32E.tmpsind wirklich DLL-Dateien, die aus der MSI extrahiert wurden.

Aber aus irgendeinem Grund konnte die DLL nicht geladen werden.

Das Wichtigste ist, herauszufinden, welche DLL fehlt. Wechseln Sie in Ihrem temporären Verzeichnis, während die Fehlermeldung auf Bildschirm angezeigt wird, und überprüfen Sie, ob die temporäre DLL-Datei noch vorhanden ist. Wenn es dort ist, kopieren Sie es mit der DLL-Erweiterung. Um herauszufinden, welche der erforderlichen DLLs fehlt, können Sie das depends.exeDienstprogramm von Visual Studio verwenden.

Wenn die temporäre Datei bereits entfernt wurde, besteht die einzige Möglichkeit, die DLL abzurufen, darin, sie aus dem Paket aus der BinaryTabelle zu extrahieren .

Ich habe zwei wahrscheinlichste mögliche Kandidaten: Visual C ++ - Laufzeit fehlt oder .Net-Laufzeit fehlt. Es ist jedoch nur eine Vermutung ...


Ich sehe nur, dass das Fehlerprotokoll im temporären Verzeichnis erstellt wird. Nichts anderes. Beim Extrahieren von Dateien aus dem Installationsprogramm habe ich versucht, Python mit dem Befehl msiexec zu extrahieren. Alle Dateien sind jetzt wie bei einer normalen Installation verfügbar. Außer ich sehe keinen Eintrag in der Liste der installierten Software. Hinzufügen von Python zu Pfad, funktioniert es wie erwartet ...
Kedar

1
Ich denke, es passiert einfach zu schnell, um es zu bemerken. Ja, Sie können Dateien aus dem Windows Installer-Paket extrahieren, es wird jedoch keine Programmregistrierung durchgeführt, da das Produkt (aus MSI-Sicht) nicht installiert ist. Diese tmp-DLL-Dateien sind nicht Teil des Installationsimages, sondern Hilfsprogramme, die während der Installation ausgeführt werden. Um es zu bekommen, können Sie das Orca-Tool verwenden oder die msi mit WiX dekompilieren. Sie haben jedoch bereits Python.
Alexey Ivanov

Ich denke, ich kann leben, ohne die Software registriert zu haben. Vollständiger Befehl: msiexec / a python.msi / qb TARGETDIR = "C: \ install_path"
Kedar


@ 101 Wenn dies der Fall ist, ist das Installationsprogramm defekt. Ich meine, es ist ein Fehler: Das Installationsprogramm darf nicht von zusätzlicher Software, einschließlich der MSVC-Laufzeit, abhängig sein - es muss eigenständig sein. Wenn MSVC 2008 oder 2010 benötigt wird, müssen diese Pakete zusammen mit dem Produkt installiert werden (im Installationsprogramm selbst enthalten).
Alexey Ivanov


-1

Keine dieser Lösungen funktionierte für mich. Als ich jedoch direkt zum Download-Ordner ging, mit der rechten Maustaste auf das Symbol der Installation klickte, die ich durchführen wollte, und auf "Als Administrator ausführen" klickte, wurde sie ohne weitere Fehlermeldungen installiert.


MSI-Installer haben diese Option nicht.
Kedar
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.