क्या किसी मॉड्यूल को विफल करने का एक प्रामाणिक तरीका है जब इसे import-module
के साथ आयात करने का प्रयास किया जाता है, उदाहरण के लिए क्योंकि एक विशिष्ट पूर्व शर्त पूरी नहीं होती है।
वर्तमान में, मेरे पास मॉड्यूल की शुरुआत में निम्नलिखित तीन लाइनें हैं:
if ( [IntPtr]::Size -ne 4 ) {
throw '32 bit environment required'
}
मैं सोच रहा हूं कि 64-बिट वातावरण में मॉड्यूल का उपयोग करने से रोकने के लिए कोई बेहतर (या अधिक सहमत तरीके से) है या नहीं।
1
René Nyffenegger
21 जिंदा 2021, 15:52
1 उत्तर
सबसे बढ़िया उत्तर
मैं सोच रहा हूं कि 64-बिट वातावरण में मॉड्यूल का उपयोग करने से रोकने के लिए कोई बेहतर (या अधिक सहमत तरीके से) है या नहीं।
पावरशेल का मॉड्यूल मेनिफेस्ट स्कीमा में इसके लिए एक कॉन्फ़िगरेशन तत्व है - ProcessorArchitecture
!
New-ModuleManifest -Path My32BitOnlyModule.psd1 -ProcessorArchitecture x86
या, यदि आपको किसी मौजूदा मॉड्यूल मेनिफेस्ट में जोड़ने की आवश्यकता है:
@{
# ...
ProcessorArchitecture = 'x86'
# ...
}
64-बिट आर्किटेक्चर के लिए, लेबल Amd64
है
1
Mathias R. Jessen
21 जिंदा 2021, 17:15
throw
के साथ जाना होगा?throw
एक.psm1
के अंदर से आयात-समय पर मेरे लिए एक पूरी तरह से उचित स्टॉपगैप लगता है, हाँ! :-)