ข้อผิดพลาดนี้เกิดขึ้นเมื่อผู้ใช้พยายามเรียกใช้สคริปต์หรือคำสั่งเฉพาะใน PowerShell เป็นส่วนหนึ่งของงานหรือเพื่อแก้ไขปัญหาที่รบกวนพวกเขาในพีซี การเรียกใช้สคริปต์มักจะถูกปิดใช้งานโดยค่าเริ่มต้นในระบบของผู้ใช้และตัวเลือกนี้จะต้องได้รับการปรับแต่งเพื่อให้อนุญาต
การเรียกใช้สคริปต์ถูกปิดใช้งานบนระบบนี้
มีสาเหตุอื่น ๆ ของปัญหานี้เช่นกันและนั่นคือเหตุผลที่เราได้จัดทำบทความที่จะช่วยคุณแก้ปัญหานี้ได้หากคุณทำตามวิธีการอย่างรอบคอบ โชคดี!
อะไรเป็นสาเหตุของข้อผิดพลาด“ Execution of scripts is disabled on this system”?
สาเหตุของปัญหานี้มีไม่มากนักและมักจะแตกต่างกันไปในแต่ละระบบ อย่างไรก็ตามสามารถแสดงรายการได้อย่างง่ายดายและคุณควรดูว่าปัญหาของคุณสามารถจัดหมวดหมู่เป็นตัวเลือกด้านล่างนี้ได้หรือไม่
- บางครั้งการเรียกใช้สคริปต์จะถูกปิดใช้งานโดยค่าเริ่มต้นในระบบของผู้ใช้และจำเป็นต้องเปิดใช้งานด้วยตนเองโดยใช้วิธีต่างๆเช่นเรียกใช้คำสั่งใน PowerShell หรือปรับแต่งรีจิสทรี
- หากการดำเนินการถูกปิดใช้งานในขอบเขตที่สูงขึ้นคุณอาจต้องเปิดใช้งานโดยใช้ Local Group Policy Editor (GPEdit) มีตัวเลือกให้ทำได้ในการตั้งค่า Windows 10 เช่นกัน
- คุณอาจต้องการแจ้งปัญหาของผู้ดูแลระบบให้กับ PowerShell เมื่อเรียกใช้คำสั่ง
โซลูชันที่ 1: เรียกใช้ PowerShell ในฐานะผู้ดูแลระบบและเรียกใช้คำสั่ง
มีคำสั่งใน PowerShell ซึ่งเกี่ยวข้องกับปัญหานี้อย่างแน่นอนและสามารถแก้ไขได้ภายในไม่กี่นาที ซึ่งรวมถึงการเปลี่ยนนโยบายการเรียกใช้สคริปต์จากภายในหน้าต่าง PowerShell ลองดูด้วยตัวคุณเอง!
- เปิดยูทิลิตี้ PowerShell โดยคลิกขวาที่ปุ่มเมนู Start และคลิกที่ตัวเลือก Windows PowerShell (Admin) ที่เมนูบริบท ผู้ใช้ Windows 7 สามารถค้นหาได้
เรียกใช้ Windows PowerShell ในฐานะผู้ดูแลระบบ
- หากคุณเห็นพรอมต์คำสั่งแทน PowerShell ในจุดนั้นคุณสามารถค้นหาได้ในเมนูเริ่มหรือแถบค้นหาที่อยู่ข้างๆ คราวนี้ตรวจสอบให้แน่ใจว่าคุณคลิกขวาที่ผลลัพธ์แรกแล้วเลือก Run as administrator
- ในคอนโซล Powershell พิมพ์คำสั่งที่แสดงด้านล่างและตรวจสอบให้แน่ใจว่าคุณคลิก Enter ในภายหลัง:
ตั้งค่า ExecutionPolicy RemoteSigned
- ปล่อยให้คำสั่งนี้ทำสิ่งนั้นและตรวจสอบเพื่อดูว่ามีข้อความปรากฏขึ้นหรือไม่ซึ่งบ่งชี้ว่ากระบวนการนี้สำเร็จแน่นอน วิธีนี้สามารถใช้ได้กับระบบปฏิบัติการ Windows ทั้งหมดรวมถึง Windows 10
โซลูชันที่ 2: แก้ไขนโยบายกลุ่ม
หากวิธีการข้างต้นไม่ประสบความสำเร็จซึ่งมักจะปรากฏใน Windows เวอร์ชันใหม่กว่าเช่น Windows 10 คุณอาจต้องเปลี่ยนนโยบายในขอบเขตที่สูงขึ้น นี่คือข้อความแสดงข้อผิดพลาดตามปกติซึ่งปรากฏขึ้นหลังจากเรียกใช้คำสั่งจากโซลูชันที่ 1:
Set-ExecutionPolicy: Windows PowerShell อัปเดตนโยบายการดำเนินการของคุณสำเร็จแล้ว แต่การตั้งค่าจะถูกแทนที่โดยนโยบายที่กำหนดไว้ในขอบเขตที่เฉพาะเจาะจงมากขึ้น เนื่องจากการลบล้างเชลล์ของคุณจะคงนโยบายการดำเนินการที่มีประสิทธิภาพในปัจจุบันของ ...
ในการแก้ปัญหาคุณควรไปที่ตัวแก้ไขนโยบายกลุ่มและเปลี่ยนการตั้งค่าจากที่นั่นทันที
- ใช้คีย์ผสมของ Windows Key + R (แตะปุ่มพร้อมกัน) เพื่อเปิดกล่องโต้ตอบเรียกใช้ ป้อน“ gpedit.msc” ในกล่องโต้ตอบเรียกใช้และกดปุ่มตกลงเพื่อเปิดเครื่องมือ Local Group Policy Editor ใน Windows 10 คุณสามารถลองพิมพ์ Group Policy Editor ในเมนู Start แล้วคลิกผลลัพธ์ด้านบน
เรียกใช้ตัวแก้ไขนโยบายกลุ่ม
- ในบานหน้าต่างนำทางด้านซ้ายของ Local Group Policy Editor ภายใต้ Computer Configuration ให้ดับเบิลคลิกที่ Administrative Templates และไปที่ส่วน Windows Components >> Windows Powershell
- เลือกโฟลเดอร์ Windows Powershell โดยดับเบิลคลิกที่โฟลเดอร์และตรวจสอบส่วนด้านขวา
- ดับเบิลคลิกที่ตัวเลือกนโยบาย“ Turn on Script Execution” ตรวจสอบปุ่มตัวเลือกถัดจากตัวเลือก“ Enabled” ภายใต้เมนูนโยบายการดำเนินการเลือกอนุญาตสคริปต์ทั้งหมดใช้การเปลี่ยนแปลงที่คุณทำก่อนออก การเปลี่ยนแปลงจะไม่มีผลจนกว่าคุณจะรีสตาร์ท
อนุญาตให้สคริปต์ทั้งหมดทำงาน
- สุดท้ายให้รีบูตเครื่องคอมพิวเตอร์เพื่อบันทึกการเปลี่ยนแปลงและตรวจสอบว่าคุณยังคงถูกกำหนดเป้าหมายด้วยข้อผิดพลาดหรือไม่
โซลูชันที่ 3: เปลี่ยนในการตั้งค่า Windows 10
ผู้ใช้ Windows 10 ยังสามารถเปลี่ยนการตั้งค่าสคริปต์ในแอปการตั้งค่า Windows 10 ภายใต้ส่วนสำหรับนักพัฒนา โดยทั่วไปนี่คือสถานที่ที่คุณควรมุ่งหน้าไปหากขั้นตอนข้างต้นล้มเหลวในการสร้างผลลัพธ์ที่มีคุณภาพเพื่อแก้ไขปัญหา โปรดทราบว่าสามารถใช้ได้กับผู้ใช้ที่ใช้ Windows 10 เท่านั้น
- ใช้คีย์ผสมของ Windows Key + I เพื่อเปิดการตั้งค่าบนพีซี Windows 10 ของคุณ หรือคุณสามารถค้นหา“ การตั้งค่า” โดยใช้แถบค้นหาที่อยู่บนทาสก์บาร์หรือคุณสามารถคลิกไอคอนฟันเฟืองที่อยู่เหนือปุ่มเมนูเริ่มหลังจากเปิดขึ้น
- ค้นหาและเปิดรายการย่อย“ การอัปเดตและความปลอดภัย” ในแอปการตั้งค่าโดยคลิกครั้งเดียว
อัปเดตและความปลอดภัยในการตั้งค่า
- ไปที่แท็บสำหรับนักพัฒนาและตรวจสอบภายใต้ส่วน Powershell สำหรับตัวเลือกที่เรียกว่า“ เปลี่ยนนโยบายการดำเนินการเพื่ออนุญาตให้สคริปต์ PowerShell ในเครื่องทำงานโดยไม่ต้องลงนาม ต้องการการเซ็นชื่อสำหรับสคริปต์ระยะไกล”
- คลิกช่องทำเครื่องหมายที่อยู่ข้างๆเพื่อเปิดใช้งานและคลิกปุ่มใช้ด้านล่าง
อนุญาตสคริปต์ในการตั้งค่า
- รีสตาร์ทคอมพิวเตอร์ทันทีและลองเรียกใช้สคริปต์ใน PowerShell เพื่อดูว่าข้อผิดพลาด“ Execution of scripts is disabled บนระบบนี้” ยังคงปรากฏอยู่หรือไม่
โซลูชันที่ 4: แก้ไขวิธีการโดยใช้ Registry
หากวิธีการข้างต้นล้มเหลวในการแก้ปัญหาของคุณสิ่งเดียวที่ต้องทำคือตรงไปที่รีจิสทรีและเปลี่ยนการตั้งค่าด้วยตนเองในขอบเขตสูงสุดที่เป็นไปได้ วิธีนี้ค่อนข้างตรงไปตรงมา แต่คุณควรระมัดระวังในการแก้ไขรีจิสทรีเพื่อให้แน่ใจว่าไม่มีอะไรผิดพลาด
- เปิดหน้าต่าง Registry Editor โดยพิมพ์“ regedit” ในแถบค้นหาเมนู Start หรือกล่องโต้ตอบ Run ซึ่งสามารถเข้าถึงได้ด้วยคีย์ผสมของ Windows Key + R ไปที่คีย์ต่อไปนี้ในรีจิสทรีของคุณโดยไปที่บานหน้าต่างด้านซ้าย:
HKEY_LOCAL_MACHINE SOFTWARE Microsoft PowerShell 1 ShellIds Microsoft.PowerShell
Registry Editor
- คลิกที่คีย์นี้และพยายามค้นหารายการสตริงที่เรียกว่า ExecutionPolicy ที่ด้านขวาของหน้าต่าง หากมีตัวเลือกดังกล่าวให้คลิกขวาที่ตัวเลือกแล้วเลือกตัวเลือกปรับเปลี่ยนจากเมนูบริบท
- ในหน้าต่างแก้ไขภายใต้ส่วนข้อมูลค่าเปลี่ยนค่าเป็นไม่ จำกัด หรือ RemoteSigned และใช้การเปลี่ยนแปลงที่คุณทำ ยืนยันกล่องโต้ตอบความปลอดภัยที่อาจปรากฏขึ้นในระหว่างกระบวนการนี้
การเปลี่ยนนโยบายสคริปต์ใน Registry Editor
- ตอนนี้คุณสามารถรีสตาร์ทคอมพิวเตอร์ด้วยตนเองได้โดยคลิกที่เมนูเริ่ม >> ปุ่มเปิด / ปิด >> รีสตาร์ทและตรวจสอบเพื่อดูว่าปัญหาหายไปหรือไม่