मैं इस तरह से PowerShell को लागू करके इस त्रुटि को बायपास करने में सक्षम था:
powershell -executionpolicy bypass -File .\MYSCRIPT.ps1
यही है, मैंने -executionpolicy bypass
स्क्रिप्ट को लागू करने के तरीके में जोड़ा ।
यह विंडोज 7 सर्विस पैक 1 पर काम करता है। मैं पॉवरशेल के लिए नया हूं, इसलिए ऐसा करने के लिए कैवियट हो सकता है कि मुझे जानकारी नहीं है।
[संपादित करें 2017-06-26] मैंने बिना किसी समस्या के विंडोज 10 और विंडोज 2012 आर 2 सहित अन्य प्रणालियों पर इस तकनीक का उपयोग करना जारी रखा है।
यहाँ अब मैं उपयोग कर रहा हूँ। यह मुझे गलती से स्क्रिप्ट पर क्लिक करने से चलाता है। जब मैं इसे अनुसूचक में चलाता हूं तो मैं एक तर्क जोड़ता हूं: "अनुसूचक" और वह संकेत को दरकिनार कर देता है।
यह भी विंडो को अंत में रोक देता है ताकि मैं PowerShell का आउटपुट देख सकूं।
if NOT "%1" == "scheduler" (
@echo looks like you started the script by clicking on it.
@echo press space to continue or control C to exit.
pause
)
C:
cd \Scripts
powershell -executionpolicy bypass -File .\rundps.ps1
set psexitcode=%errorlevel%
if NOT "%1" == "scheduler" (
@echo Powershell finished. Press space to exit.
pause
)
exit /b %psexitcode%