Fehler bei der VC ++ 2008-Neuverteilung: Der Zugriff wird verweigert

2409
MKaama

Die Installation von OpenOffice 4.1.2 führt zu dem Fehler 1935. (Die verteilbare Visual C ++ 2008-Datei konnte nicht installiert werden). Die Installation ist jedoch abgeschlossen und OpenOffice funktioniert normal.

Trotzdem entschied ich mich, den manuellen Start von vcredist_x86.exe zu untersuchen. Das Installationsprotokoll meldet diese Zeilen:

MSI (s) (80: E0) [18: 34: 33: 070]: Ausführen von op: SetTargetFolder (Ordner = c: \ Windows \ winsxs \ x86_microsoft.vc90.atl_1fc8b3b9a1e18e3b_9.0.30729.4148_none_51ca66a2bbai (). E0) [18: 34: 33: 070]: Ausführen von op: SetSourceFolder (Ordner = 1 \ Windows \ winsxs \ ulATLx86) MSI (s) (80: E0) [18: 34: 33: 070]: Ausführen von op: AssemblyCopy (SourceName = ax86.dll | atl90.dll, SourceCabKey = ul_atl90.dll.30729.4148.Microsoft_VC90_ATL_x86.QFE, DestName = atl90.dll, Attribute = 0, FileSize = 159032, PerTick = 65536,, VerifyMedia = 1, ElevateFlags = 4, ,,, ComponentId = ,,,, AssemblyMode = 0,) MSI (s) (80: E0) [18: 34: 33: 071]: Montagefehler: Zugriff wird verweigert .

MSI (s) (80: E0) [18: 34: 33: 071]: Hinweis: 1: 1935 2: 3: 0x80070005 4: IAssemblyCache 5: CreateAssemblyCacheItem 6: Microsoft. VC90.ATL, version = "9.0.30729.4148", publicKeyToken = "1fc8b3b9a1e18e3b", processorArchitecture = "x86", type = "win32" MSI (s) (80: E0) [18: 34: 33: 071]: Assembly Error (sxs): Bitte schauen Sie in Component Based Service Logging unter% windir% \ logs \ cbs \ cbs.log nach, um weitere Diagnoseinformationen zu erhalten. MSI (s) (80: E0) [18: 39: 03: 761]: Produkt: Microsoft Visual C ++ 2008 Redistributable - x86 9.0.30729.4148 - Fehler 1935. Fehler bei der Installation der Assembly "Microsoft.VC90.ATL", version = "9.0.30729.4148", publicKeyToken = "1fc8b3b9a1e18e3b", processorArchitecture = "x86", type = "win32" '. Weitere Informationen finden Sie unter Hilfe und Support. HRESULT: 0x80070005. Assembly-Schnittstelle: IAssemblyCache, Funktion: CreateAssemblyCacheItem, Komponente:

Fehler 1935. Bei der Installation der Assembly 'Microsoft.VC90.ATL, version = "9.0.30729.4148" ist ein Fehler aufgetreten, publicKeyToken = "1fc8b3b9a1e18e3b", processorArchitecture = "x86", type = "win32"'. Weitere Informationen finden Sie unter Hilfe und Support. HRESULT: 0x80070005. Assembly-Schnittstelle: IAssemblyCache, Funktion: CreateAssemblyCacheItem, Komponente: MSI (s) (80: E0) [18: 39: 03: 776]: Anmerkung: 1: 2265 2: 3: -2147287035 MSI (s) (80: E0) [18: 39: 03: 777]: Der Wert der Benutzerrichtlinie 'DisableRollback' ist 0 MSI (s) (80: E0) [18: 39: 03: 777]: Maschinenrichtlinie Der Wert 'DisableRollback' ist 0. Aktion beendet. 18:39:03: InstallFinalize. Rückgabewert 3.

C: \ Windows \ Logs \ CBS \ CBS.log enthält keine hilfreichen Informationen. Ich möchte keine Neuinstallation oder Bereinigung des Systems durchführen, da viele Artikel raten, ich möchte das spezifische Problem finden.

0

1 Antwort auf die Frage

1
MKaama

Nach vielen googeln, fand ich eine Erwähnung von C: \ Windows \ WinSxS \ InstallTemp hier . Ich konnte keine Erwähnung finden InstallTemp in Installationsprotokolle, aber es stellte sich heraus, der Täter sein: weder der angemeldete-in-Benutzer noch Administrator hatte Zugriff auf den Ordner ändern (warum?). Ich habe auf einem anderen (normalen) Computer überprüft, dass der Benutzer darin Unterordner erstellen kann .

Also habe ich Administratoren auf der Registerkarte "Sicherheit" des Ordners die Berechtigung zum Ändern hinzugefügt . Danach funktionierte die umverteilbare Installation.

Das Problem wird hier erwähnt: http://blogs.msdn.com/b/vsnetsetup/archive/2012/10/07/installation-of-vc-2005-2008-redistributables-fail-with-0x80070005-assembly-error- access-is-denied-issue.aspx Normalerweise führt MSIExec Installationsprogramme unter dem Konto SYSTEM aus, das nur Lese- / Listenrechte für den WinSxS-Ordner, aber volle Rechte für WinSxS \ InstallerTemp besitzt. Anscheinend haben Sie die Sicherheitsbeschreibung in WinSxS \ InstallerTemp mit der von WinSxS überschrieben. Sheng Jiang 蒋晟 vor 8 Jahren 1