PowerShell (इंजन) .NET 4.0 के तहत ठीक चलता है। PowerShell (कंसोल होस्ट और ISE ), केवल इसलिए नहीं कि वे .NET के पुराने संस्करणों के विरुद्ध संकलित किए गए थे। एक रजिस्ट्री सेटिंग है जो .NET फ्रेमवर्क लोड किए गए सिस्टमवाइड को बदलेगी , जो बदले में PowerShell को .NET 4.0 कक्षाओं का उपयोग करने की अनुमति देगा:
reg add hklm\software\microsoft\.netframework /v OnlyUseLatestCLR /t REG_DWORD /d 1
reg add hklm\software\wow6432node\microsoft\.netframework /v OnlyUseLatestCLR /t REG_DWORD /d 1
.NET 4.0 का उपयोग करने के लिए बस ISE को अपडेट करने के लिए, आप कॉन्फ़िगरेशन ($ psHome \ powerhell_ise.exe.config) फ़ाइल को इस तरह से बदल सकते हैं:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0.30319" />
</startup>
</configuration>
आप .NET 4.0 अनुप्रयोगों का निर्माण कर सकते हैं, जो कि PowerShell API (System.Management.Automation.PowerShell) का उपयोग करके PowerShell को ठीक कहते हैं, लेकिन ये चरण .NET 4.0 के तहत काम करने के लिए इन-द-बॉक्स PowerShell होस्ट प्राप्त करने में मदद करेंगे।
जब आपको उनकी कोई आवश्यकता न हो तो रजिस्ट्री कुंजियाँ हटा दें। ये मशीन-वाइड की हैं और .NET। 4.0, यहाँ तक कि .net 2 और .net 3.5 का उपयोग करते हुए सभी अनुप्रयोगों को जबरन माइग्रेट करते हैं