2012-09-17 25 views
5

Tôi đã được chạy mã của tôi trong vài tháng qua bằng cách làm này -Powershell: Thực hiện chính sách

Set-ExecutionPolicy Unrestricted 

Nhưng, một cái gì đó kỳ lạ đang xảy ra và tôi nhận được này lỗi luôn -

Windows PowerShell đã cập nhật chính sách thực thi của bạn thành công, nhưng cài đặt bị ghi đè bởi chính sách được xác định ở phạm vi cụ thể hơn. Do ghi đè, trình bao của bạn sẽ giữ nguyên chính sách thực thi hiện tại là "Không bị giới hạn" hiện tại là . Nhập "Get-ExecutionPolicy -List" để xem cài đặt chính sách thực thi của bạn. Để biết thêm thông tin, vui lòng xem "Get-Help Set-ExecutionPolicy".

Tôi đã gọi những liên kết này nhưng không có may mắn -

Get-ExecutionPolicy -list

MachinePolicy               
UserPolicy               
Process               
CurrentUser               
LocalMachine 
+0

Đầu ra của 'Get-ExecutionPolicy -List' sẽ hiển thị cho bạn chính sách thực thi cho mỗi phạm vi. –

+0

Nó đang hiển thị Không hạn chế cho LocalMachine. Nhưng, ở giữa tôi nhận được lỗi như tôi đã đề cập ở trên. Tôi không biết tại sao. Nó thực sự bực bội! –

Trả lời

1

Bạn sẽ thấy kết quả như này từ Get-ExecutionPolicy -List:

 Scope ExecutionPolicy 
     ----- --------------- 
MachinePolicy  Undefined 
    UserPolicy  Undefined 
     Process  Undefined 
    CurrentUser  Undefined 
LocalMachine RemoteSigned 

Khi bạn thấy phạm vi có cài đặt không mong muốn, bạn có thể đặt lại phạm vi như vậy:

Set-ExecutionPolicy Undefined -Scope <scope-name> 

Giả sử bạn được phép làm như vậy.

+0

Nhưng tôi gặp lỗi trong khi thực thi từ mã C# và tại thời điểm đó tôi không có bất kỳ điều khiển nào để đặt lại phạm vi? –

+0

Có thể sysadmin làm điều gì đó ở cấp độ chính sách nhóm mãi mãi sao cho tôi không phải chạm vào mã dựa trên kịch bản chút nào cho điều này ít nhất (Win7-32 ​​& 64 bit, Win2k8 R2) –

+0

Whoa - bạn đang chạy cái này từ chính bạn máy chủ tức là bạn đang lưu trữ động cơ PowerShell trong ứng dụng C# của riêng bạn? –

Các vấn đề liên quan