ไม่สามารถติดตั้งแอปพลิเคชัน ClickOnce เนื่องจากการตั้งค่าความปลอดภัย (Windows 10)


70

เมื่อพยายามติดตั้งแอปพลิเคชัน ClickOnce ที่ Microsoft ลงนามจะมีข้อผิดพลาดปรากฏขึ้น "ผู้ดูแลระบบของคุณบล็อกแอปพลิเคชันนี้เพราะอาจทำให้เกิดความเสี่ยงด้านความปลอดภัยต่อคอมพิวเตอร์ของคุณ" และ "การตั้งค่าความปลอดภัยของคุณไม่อนุญาตให้ติดตั้งแอปพลิเคชันนี้ .

ในฐานะผู้ดูแลระบบที่จะกำหนดนโยบายดังกล่าวฉันไม่สามารถใช้ชีวิตของฉันได้ว่าเหตุใดจึงถูกบล็อกสำหรับผู้ใช้เพียงรายเดียวและไม่ใช่ผู้ใช้รายอื่นที่พีซีใช้ภาพที่เหมือนกันและทำไมจึงใช้งานได้สำหรับผู้ใช้รายอื่น เพลิดเพลินกับสิทธิพิเศษเช่นเดียวกับผู้ใช้ที่ได้รับข้อความต่อไปนี้ โปรดทราบว่านโยบายกลุ่มโดเมนเดียวกันนี้จะใช้กับผู้ใช้รายนี้ที่ประสบกับข้อผิดพลาดและผู้ใช้ที่ไม่ได้รับข้อผิดพลาด

Imgur

แม้แต่การพยายามเรียกใช้แอปพลิเคชั่น "ในฐานะผู้ดูแลระบบ" ก็ไม่สามารถแก้ไขปัญหาได้ บันทึกเหตุการณ์ไม่แสดงข้อผิดพลาดและฉันไม่สามารถค้นหาบันทึกใด ๆ เพื่อช่วยวินิจฉัยปัญหา

นโยบายหรือการตั้งค่าในท้องถิ่นใดที่อนุญาตหรือปฏิเสธแอปพลิเคชันนี้


มันต้องใช้อินเทอร์เน็ตหรืออินทราเน็ตโซน (ความน่าเชื่อถือเต็มรูปแบบสำหรับการติดตั้งซีดีรอม)ตามmsdn.microsoft.com/en-us/library/142dbbz4(v=vs.90).aspx

คำเตือนนี้เกิดขึ้นในเครื่องของผู้ใช้รายเดียวหรือมีผู้ใช้หลายคนในหลายเครื่องมีปัญหานี้หรือไม่
Ramhound

ฉันสังเกตว่าถึงแม้จะไม่ชัดเจนนักในคำถามดั้งเดิมที่ว่ามันถูกบล็อกสำหรับ 'ผู้ใช้เพียงคนเดียว'
Beems

ดูเหมือนว่าจะเป็นปัญหาใหญ่ (34,438 ครั้ง) ฉันจะหยุดสิ่งนี้ไม่ให้เกิดขึ้นในคอมพิวเตอร์ของผู้อื่นได้อย่างไรหากฉันเป็นนักพัฒนา ปัญหานี้เกิดจากการสร้างโปรแกรมใน Visual Studio และพยายามเรียกใช้ Setup.exe สำหรับโปรแกรมของฉัน
Daniel

@Daniel หากแอปพลิเคชันของคุณไม่ต้องการการเพิ่มระดับคุณสามารถลองตั้งค่ารีจิสตรีใน HKCU แทน: HKCU\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel\Internetเป็นEnabled(เปิดเผยแบบเต็ม: ฉันไม่ได้ทำการทดสอบนี้) มิฉะนั้นหากวิธีนี้ใช้ไม่ได้คุณสามารถลองรวมกระบวนการที่เลื่อนระดับได้ซึ่งจะตั้งค่าไว้ภายใต้ HKLM
Beems

คำตอบ:


94

สิ่งนี้มีสาเหตุมาจาก "ClickOnce Trust Prompt พฤติกรรม": https://msdn.microsoft.com/en-us/library/ee308453.aspx

ในการปรับค่านี้เพียงแค่เปลี่ยนค่าใน Registry และคุณควรจะสามารถติดตั้งแอปพลิเคชันได้

วิธีเปิดใช้งานพรอมต์ความน่าเชื่อถือ ClickOnce โดยใช้ตัวแก้ไขรีจิสทรีเปิดตัวแก้ไขรีจิสทรี:

คลิกเริ่มแล้วคลิกเรียกใช้

ในกล่องเปิดให้พิมพ์ regedit32 แล้วคลิกตกลง

ค้นหาคีย์รีจิสทรีต่อไปนี้:

\ HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ .NETFramework \ Security \ TrustManager \ PromptingLevel

หากไม่มีคีย์ให้สร้างขึ้น

เพิ่มคีย์ย่อยต่อไปนี้เป็นค่าสตริงหากยังไม่มีอยู่กับค่าที่เกี่ยวข้องที่แสดงในตารางต่อไปนี้

ภาพตาราง

ในคอมพิวเตอร์ของฉันค่าถูกตั้งเป็น "ปิดการใช้งาน" และฉันไม่มีเงื่อนงำใดที่แอปพลิเคชันทำเช่นนั้น ฉันเปลี่ยนค่าเป็นค่าเริ่มต้นและตอนนี้ทุกอย่างทำงานได้อีกครั้งอย่างที่ควรจะเป็น

หรือคุณสามารถลบคีย์ "TrustManager" เองและทุกอย่างก็ทำงานได้เช่นกัน



14
ขอบคุณนี่เป็นปัญหาแน่นอน ฉันเปลี่ยน"HKLM\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel\Internet"เป็นEnabledและใช้งานได้ตามที่ตั้งใจไว้ตอนนี้
Beems

1
ฉันต้องการพูดถึงว่าตัวเลือกเริ่มต้นคือ "เปิดใช้งาน" สำหรับทุกไซต์ยกเว้นไซต์ที่ไม่น่าเชื่อถือ
Hooch

3
ในกรณีของฉันฉันต้องเปลี่ยน\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\Security\TrustManager\PromptingLevelเป็นEnabled
MaciejLisCK

2
มีรายการที่แตกต่างกันสำหรับโซนที่แตกต่างกันเช่นอินเทอร์เน็ต LocalIntranet, MyComputer, TrustedSites, UntrustedSites Enabledเลือกหนึ่งที่เหมาะกับสถานการณ์ของคุณและเปลี่ยนค่าของ
smwikipedia

4
ผู้ใช้ปกติควรทำเช่นนี้อย่างไร ตกลงดีฉันหมายความว่าถ้าใครบางคนไม่ได้โง่พวกเขาสามารถ google และค้นหาคำตอบนี้และทำมัน .. แต่คุณรู้ว่าสิ่งที่ฉันหมายถึงสิ่งที่เจ็บปวดในตูด หาก windows ไม่ใช่ระบบปฏิบัติการที่ดีที่สุดสำหรับประสิทธิภาพการทำงานฉันจะไม่ทนกับอึนี้ (และการรีบูตอัตโนมัติบังคับให้รีบูตอัตโนมัติ)
กี้

2

นี่คือสคริปต์ powershell ที่จะอัปเดตค่า:

Set-Itemproperty -path 'HKLM:\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel' -Name 'Internet' -value 'Enabled'
Set-Itemproperty -path 'HKLM:\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel' -Name 'LocalIntranet' -value 'Enabled'
Set-Itemproperty -path 'HKLM:\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel' -Name 'MyComputer' -value 'Enabled'
Set-Itemproperty -path 'HKLM:\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel' -Name 'TrustedSites' -value 'Enabled'
Set-Itemproperty -path 'HKLM:\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel' -Name 'UntrustedSites' -value 'Enabled'

ก็เพียงพอแล้วที่จะคัดลอก / วางรหัสด้านบนที่ "ยกระดับ" powershell (คลิกขวาเรียกใช้ในฐานะผู้ดูแลระบบ)

และหากคุณได้รับข้อผิดพลาดบางอย่างอาจเป็นเพราะเส้นทางนั้นไม่มีอยู่ให้รันคำสั่งนี้

New-Item "HKLM:\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel" -force | Out-Null
New-ItemProperty -path 'HKLM:\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel' -Name 'Internet' -value 'Enabled'
New-ItemProperty -path 'HKLM:\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel' -Name 'LocalIntranet' -value 'Enabled'
New-ItemProperty -path 'HKLM:\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel' -Name 'MyComputer' -value 'Enabled'
New-ItemProperty -path 'HKLM:\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel' -Name 'TrustedSites' -value 'Enabled'
New-ItemProperty -path 'HKLM:\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel' -Name 'UntrustedSites' -value 'Enabled'
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.