เหตุใดการตั้งค่า Powershell เป็น set-executionpolicy remotesigned ที่ล้มเหลว?


15

ใช้ Win7-32bit และ Powershell ISE ฉันพยายามเรียกใช้สคริปต์ที่บันทึกไว้ (สมมติว่ามี cls ง่าย ๆ ) ฉันได้รับข้อผิดพลาดการดำเนินการของสคริปต์นั้นถูกห้ามด้วยคำแนะนำ "ขอความช่วยเหลือเกี่ยวกับการลงชื่อเข้าใช้" ตามปกติ

เมื่อใช้ "set-executionpolicy remotesigned" เพื่อแก้ไขฉันได้รับกล่องโต้ตอบเพื่อตรวจสอบว่าฉันแน่ใจ แต่ถ้าฉันยอมรับข้อผิดพลาดอื่นเกิดขึ้น:

acces to registry key "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell" denied
    + set-executionpolicy <<<<  remotesigned
        + CategoryInfo          : NotSpecified: (:) [Set-ExecutionPolicy], UnauthorizedAccessException
        + FullyQualifiedErrorId : System.UnauthorizedAccessException,Microsoft.PowerShell.Commands.SetExecutionPolicyCommand

ฉันต้องทำอย่างไรเพื่อเรียกใช้สคริปต์ที่บันทึกไว้ในฐานะผู้ใช้ (หรืออัตโนมัติเป็นบริการรายวัน)

คำตอบ:


15

คุณต้องเรียกใช้ powershell ในฐานะผู้ดูแลระบบเพื่อตั้งค่านโยบายการดำเนินการ

เมื่อคุณตั้งค่าเป็นรีโมทใหม่คุณสามารถเรียกใช้ PowerShell ในฐานะผู้ใช้ทั่วไปได้


1
ฉันใช้ PowerShellISE ในฐานะผู้ดูแลระบบ ...
mbx

5
เขาหมายถึงว่าคุณต้องวิ่งด้วยการยกระดับ คุณสามารถคลิกขวาที่ไอคอน PowerShell ในแถบงานหรือเมนูเริ่มแล้วเลือก "Run as Administrator"
JasonMArcher

7

เพียงไปที่แผงควบคุม -> เครื่องมือการดูแลระบบ -> โมดูล Windows PowerShell (เปิด PowerShell) และพิมพ์ "set-executionpolicy remotesigned" ตามปกติ แค่นั้นแหละ.


0

ฉันพบวิธีแก้ปัญหาด้วยการเพิ่มการอนุญาตโดยตรงไปยังรีจิสทรีของ windows

เขียนเกี่ยวกับที่นี่: Powershell 101

หวังว่านี่จะช่วยได้

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