2013-02-12 13 views
7

मैं अगर मैं इसे इसPowerShell प्रयोग के लिए GAC से आयात-मॉड्यूल

Import-Module "C:\temp\My.PowerShell.DocumentConversion.dll" 

मैं वैश्विक विधानसभा कैश में मॉड्यूल रजिस्टर के रूप में अच्छा प्रदर्शन किया लेकिन नहीं कर सकते हैं की तरह लोड एक powershell मॉड्यूल है कि बस ठीक काम करता है बनाया है वहां से इसे लोड करें। मैंने सत्यापित किया है कि वास्तव में मॉड्यूल जीएसी में भरा हुआ है। मैं लगा कि यह इस

Import-Module My.PowerShell.DocumentConversion.dll 

जाहिर है मैं गलत था की तरह मॉड्यूल लोड करने के लिए पर्याप्त हो सकता है, कैसे एक गाक से powershell मॉड्यूल को चलाने के लिए करते हैं? यह LoadWithPartialName विधि का प्रयास काम नहीं कर रहा है, तो

Add-Type -Assembly My.PowerShell.DocumentConversion 

:

[System.Reflection.Assembly]::LoadWithPartialName('My.PowerShell.DocumentConversion') 

या पूर्ण पथ का उपयोग कर: जब तक

[System.Reflection.Assembly]::LoadFile(...) 

उत्तर

15

Add-Type cmdlet का प्रयास करें जीएसी में है, असेंबली का संदर्भ देने के लिए केवल मजबूत नाम का उपयोग करें। प्राप्त करने के लिए GAC के लिए पथ बारे में पता होना यह नेट 4,0 http://en.wikipedia.org/wiki/Global_Assembly_Cache

$assemblyPath = 'path to the assembly file in the gac' 
$fullName = [System.Reflection.AssemblyName]::GetAssemblyName($assemblyPath).FullName 
[System.Reflection.Assembly]::Load($fullName) 
+0

में बदल गया है या पूर्ण पथ का उपयोग किया है: [System.Reflection.Assembly] :: LoadFrom (...) – RinoTom