ทำไมสิ่งนี้ทำให้ฉันติดตั้ง MSI: ผู้ดูแลระบบได้กำหนดนโยบายเพื่อป้องกันการติดตั้งนี้


28

ฉันพยายามติดตั้ง MSI บนเครื่อง Windows Server 2012 ซึ่งเป็นส่วนหนึ่งของโดเมนแล็บของฉัน ฉันเป็นผู้ดูแลระบบในพื้นที่และโดเมน แต่ดูเหมือนว่าจะป้องกันไม่ให้ติดตั้ง MSI นี้

เพื่อความกระจ่างแจ้งเมื่อพยายามติดตั้งส่วนขยาย git สำหรับ visual studio (อยู่ที่นี่ ) เข้าสู่ระบบในฐานะผู้ใช้โดเมนที่เป็นส่วนหนึ่งของกลุ่มผู้ดูแลระบบฉันได้รับข้อผิดพลาดดังต่อไปนี้

ป้อนคำอธิบายรูปภาพที่นี่

เครื่องรายงานข้อผิดพลาดคือ Windows Server 2012

ฉันเกือบจะแน่ใจว่ามันจะต้องมีข้อ จำกัด นโยบายกลุ่มบางอย่าง? จะไม่มีการตั้งค่าเว้นแต่จะเป็นระดับความปลอดภัยเริ่มต้นหรือไม่

เพื่อความกระจ่างแจ้งฉันต้องการทราบว่าเหตุใด MSI จึงถูกติดตั้งโดยผู้ดูแลระบบโดเมนนี้

คำตอบ:


37

หลังจากใช้เวลาดูนโยบายกลุ่มเท่าที่ฉันจะบอกได้ไม่มีอะไรที่เกี่ยวข้อง จากนั้นฉันเจอโพสต์นี้ที่แนะนำให้ลองเปิดใช้คำสั่ง promt ในฐานะผู้ดูแลระบบ

 msiexec /a install.msi

นี้ปรากฏในการทำงาน แต่วิ่งอย่างรวดเร็ว - ในความเป็นจริงมันไม่ได้ ในสิ่งที่ฉันพยายามนี้ภายในพรอมต์คำสั่งของผู้ดูแลระบบ

 msiexec /i install.msi

ซึ่งทำงานรักษา


มันใช้งานได้ แต่มันน่ารำคาญที่จะทำทุกครั้งที่คุณติดตั้งจาก msi ดูคำตอบของ Armin Sadeghi ด้านล่างสำหรับวิธีแก้ปัญหาระยะยาว
Jake

17

ฉันพบปัญหานี้ซึ่งการติดตั้ง MSI ถูกป้องกันด้วย "ผู้ดูแลระบบได้กำหนดนโยบายเพื่อป้องกันการติดตั้งนี้" มาก่อน ฉันเชื่อว่าเป็นเพราะนโยบายการ จำกัด ซอฟต์แวร์ Windows ที่เป็นค่าเริ่มต้นและฉันได้เห็นทั้งใน Windows Server 2008 R2 และ Windows Server 2012

อาจเป็นวิธีที่ใช้ GUI ได้ดีกว่าในการปรับเปลี่ยนนโยบาย แต่การตั้งค่าคีย์ reg ต่อไปนี้ในฐานะผู้ดูแลระบบของเครื่องทำเคล็ดลับ:

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Installer]
"DisableMSI"=dword:00000000

5
ใช้งานได้ 100%
Jan Chrbolka

3
สิ่งนี้ใช้ได้สำหรับฉัน ฉันต้องเพิ่มส่วน "ตัวติดตั้ง" ของเส้นทางเป็นคีย์แล้วเพิ่ม DWORD "DisableMSI" (โดยไม่ใส่เครื่องหมายอัญประกาศ)
Mike S

1
มีข้อความแสดงข้อผิดพลาดเดียวกันกับการอัปเดต AcrobatReader หลังจากเปลี่ยนรีจิสตรีเป็นศูนย์การติดตั้งสำเร็จแล้ว
Kemin Zhou

พยายามค้นหาคีย์ "DisableMSI" บนเส้นทางรีจิสตรี "HKEY_LOCAL_MACHINE \ SOFTWARE \ Policies \ Microsoft \ Windows \ Installer" แต่ไม่มีโฟลเดอร์ "Installer" อยู่ ฉันควรสร้างโฟลเดอร์ตัวติดตั้งและเพิ่มใน DisableMSI dword หรือไม่
Harvey Darvey

2

ซึ่งมักเกิดจากนโยบายกลุ่มหรือนโยบายท้องถิ่นที่ปิดใช้งาน Windows Installer

ดูตัวควบคุมโดเมนของคุณหากคุณมี GPO ปิดการใช้งาน "Windows Installer": การกำหนดค่าคอมพิวเตอร์> เทมเพลตการดูแล> ส่วนประกอบของ Windows> ตัวติดตั้ง Windows> "ปิดการติดตั้ง Windows"

ตรวจสอบว่าได้ตั้งค่าเป็น "ไม่ได้กำหนดค่า" หรือ "ปิดการใช้งาน"

หากคุณไม่พบใน GPO ของคุณให้ดูที่นโยบายท้องถิ่นของคอมพิวเตอร์โดยใช้ gpedit.msc

หมายเหตุ: ความจริงที่ว่าคุณเป็นผู้ดูแลโดเมนนั้นไม่สำคัญ ทุกอย่างขึ้นอยู่กับขอบเขตของ GPO


2
Verify that it is set to "Not configured" or "Disabled".ที่ไม่เป็นความจริง. ค่าเริ่มต้น (ไม่ได้กำหนดค่า) เป็นซึ่งหมายความว่า1 msdn.microsoft.com/en-us/library/aa368304.aspxปิดการใช้งานในแง่ของ gpos หมายความว่านโยบายจะถูกปิดใช้งานดังนั้นคีย์ reg จะถูกลบและจะใช้ค่าเริ่มต้น เสียงแปลก แต่คุณต้องเลือกและเลือกในกล่องแบบหล่นลง managed onlyEnabledNever
Jürgen Steinblock

1

เรามีปัญหาที่เหมือนกันเมื่อสร้าง MSI ที่ใช้IsCmdBld.exeแต่ไม่ใช่เมื่อสร้างจากส่วนติดต่อผู้ใช้ซอฟต์แวร์ InstallShield

เมื่อรันโปรแกรมติดตั้งเราจะเห็นข้อผิดพลาดที่กล่าวถึงโดย OP และบันทึกการติดตั้งจะแสดง: MSI_LUA: Invalid Descriptor Format.

สาเหตุของปัญหาคือการที่เราได้ผ่าน ProductCode ค่า Guid กับบรรทัดคำสั่ง IsCmdBld.exe -z "ProductCode"="f176c219-dec0-4fa9-a373-94a711f28a3d"เช่นนี้

คุณสามารถเห็นได้ว่า Guid ให้ที่นี่ไม่ได้ล้อมรอบด้วยและ{}

เราแก้ไขด้วยการส่ง guid ด้วยวงเล็บไปรอบ ๆ : -z "ProductCode"="{f176c219-dec0-4fa9-a373-94a711f28a3d}"ซึ่งทำงานได้ตามที่คาดไว้และไม่แสดงข้อผิดพลาดอีกต่อไป


0

คลิกขวา -> เรียกใช้ในฐานะผู้ดูแลระบบ


2
สิ่งนี้แตกต่างจากคำตอบที่ยอมรับอย่างไร
Dave M

0

ทั้ง msiexec และการแก้ไขรีจิสตรีไม่ทำงานสำหรับฉัน (แม้หลังจากรีบูตเครื่อง) แต่การปิดการใช้งานการควบคุมบัญชีผู้ใช้ (ตามที่แนะนำโดยHa Lyในเธรดนี้ ) และการรีบูตเครื่องก็เป็นการหลอกลวง


-2

คุณมีตัวเลือกที่จะปิด UAC ผ่านรีจิสทรีโดยการเปลี่ยนDWORD EnableLUAจาก1การอยู่ใน0 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\systemคุณจะได้รับการแจ้งเตือนว่าจำเป็นต้องรีบูต หลังจากรีบูต UAC จะถูกปิดการใช้งาน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.