Dlaczego to uniemożliwia mi instalację MSI: Administrator systemu ustawił zasady, aby zapobiec tej instalacji

28

Próbuję zainstalować plik MSI na komputerze z systemem Windows Server 2012, który jest częścią mojej domeny laboratoryjnej. Jestem administratorem lokalnym i domeny, ale wydaje mi się, że nie mogę zainstalować tego MSI.

Dla wyjaśnienia, podczas próby zainstalowania rozszerzenia git dla Visual Studio (znajdującego się tutaj ) zalogowanego jako użytkownik domeny, który jest częścią grupy administratorów, pojawia się następujący błąd

wprowadź opis zdjęcia tutaj

Komputer zgłaszający błąd to system Windows Server 2012.

Jestem prawie pewien, że to musi być jakieś ograniczenie zasad grupy? Żadne nie zostanie ustawione, chyba że jest to domyślny poziom bezpieczeństwa?

Dla wyjaśnienia, chciałbym wiedzieć, co zapobiega instalowaniu tego pliku MSI przez administratora domeny?

Jason Hyland
źródło

Odpowiedzi:

37

Po tym, jak mogłem stwierdzić, spędziłem czas na analizowaniu zasad grupy, nic nie było istotne. Potem natknąłem się na ten post, który sugeruje, że próbuję uruchomić polecenie promt jako administrator i uruchomić

 msiexec /a install.msi

To wydawało się działać, ale działało bardzo szybko - w rzeczywistości nie działało . Pod wpływem kaprysu wypróbowałem to w wierszu polecenia administratora.

 msiexec /i install.msi

który działał ucztą.

Jason Hyland
źródło
To działa, ale może być irytujące przy każdej instalacji z MSI. Zobacz długoterminowe rozwiązanie Armin Sadeghi poniżej.
Jake
17

Natrafiłem na takie zachowanie, w którym instalacja MSI jest uniemożliwiona przez „Administrator systemu ustawił zasady, aby zapobiec tej instalacji”. Uważam, że wynika to z domyślnych zasad ograniczeń oprogramowania Windows i widziałem to zarówno w systemie Windows Server 2008 R2, jak i Windows Server 2012.

Prawdopodobnie istnieje lepszy sposób zmiany zasad oparty na graficznym interfejsie użytkownika, ale założenie następującego klucza rejestru jako administrator na komputerze rozwiązuje problem:

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Installer]
"DisableMSI"=dword:00000000
Armin Sadeghi
źródło
5
Działa to w 100%
Jan Chrbolka,
3
To zadziałało dla mnie. Musiałem dodać część ścieżki „Instalator” jako klucz, a następnie dodać DWORD „DisableMSI” (bez cudzysłowów).
Mike S
1
Miał ten sam komunikat o błędzie przy aktualizacji AcrobatReader, po pomyślnej zmianie rejestru na zero
Kemin Zhou
Próbowałem znaleźć klucz „DisableMSI” w ścieżce rejestru „HKEY_LOCAL_MACHINE \ SOFTWARE \ Policies \ Microsoft \ Windows \ Installer”, ale folder „Installer” nie istnieje. Czy powinienem utworzyć folder instalatora i dodać dword DisableMSI?
Harvey Darvey,
2

Wynika to zwykle z zasad grupy lub zasad lokalnych wyłączających Instalatora Windows.

Spójrz na kontroler domeny, jeśli obiekt GPO wyłącza „Instalator Windows”: Konfiguracja komputera> Szablony administracyjne> Składniki Windows> Instalator Windows> „Wyłącz Instalator Windows”.

Sprawdź, czy jest ustawiony na „Nieskonfigurowany” lub „Wyłączony”.

Jeśli nie możesz go znaleźć w swoich obiektach GPO, sprawdź lokalne zasady komputera za pomocą gpedit.msc.

Uwaga: fakt, że jesteś administratorem domeny, nie ma znaczenia. Wszystko zależy od zakresu obiektu zasad grupy.

Charlie Wilson
źródło
2
Verify that it is set to "Not configured" or "Disabled".To nieprawda. Domyślna (nie jest skonfigurowany) to 1które to środki managed only. msdn.microsoft.com/en-us/library/aa368304.aspx Wyłączone pod względem GPO oznacza, że ​​zasady zostaną wyłączone, więc klucz reg zostanie usunięty i zostanie użyta wartość domyślna. Dźwięk jest dziwny, ale musisz wybrać Enabledi wybrać Neverz menu rozwijanego.
Jürgen Steinblock
1

Mieliśmy ten sam dokładny problem podczas budowania MSI przy użyciu IsCmdBld.exe, ale nie podczas budowania z interfejsu użytkownika oprogramowania InstallShield.

Podczas uruchamiania instalatora zobaczylibyśmy błąd wspomniany przez PO, a dziennik instalacji pokazywałby: MSI_LUA: Invalid Descriptor Format.

Przyczyną problemu było to, że przekazując wartość ProductCode Guid do linii poleceń IsCmdBld.exe tak: -z "ProductCode"="f176c219-dec0-4fa9-a373-94a711f28a3d".

Widać, że podany tutaj przewodnik nie jest otoczony {i }.

Naprawiliśmy go, przekazując GUID z nawiasami wokół: -z "ProductCode"="{f176c219-dec0-4fa9-a373-94a711f28a3d}"działa to zgodnie z oczekiwaniami i nie wyświetla już błędu.

KavenG
źródło
0

kliknij prawym przyciskiem myszy -> uruchom jako administrator

calorie712
źródło
2
Czym różni się ta od zaakceptowanej odpowiedzi?
Dave M
0

Ani poprawki msiexec, ani rejestru nie działały dla mnie (nawet po ponownym uruchomieniu), ale wyłączenie Kontroli konta użytkownika (jak zasugerował Ha Ly w tym wątku ) i ponowne uruchomienie załatwiło sprawę.

Miles Wolbe
źródło
-2

Możesz wyłączyć UAC poprzez rejestr, zmieniając DWORD EnableLUAz 1na 0na HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\system. Otrzymasz powiadomienie, że wymagane jest ponowne uruchomienie komputera. Po ponownym uruchomieniu Kontrola konta użytkownika jest wyłączona.

Bismarck
źródło