2012-11-08 106 views
0

我想在我的計算機上安裝的PowerShell特定模塊中運行一個函數。 通過PowerShell窗口,它運行良好,但使用PowerGUI時失敗。無法在PowerShell中導入模塊 - 無法加載文件

雖然試圖執行:

Import-Module modulename 

我得到異常: 有裝載政變文件格式錯誤: Microsoft.PowerShell,路徑:modulename.format.pslxmml:跳過文件,因爲它已經來自「Microsoft.PowerShell」。

回答

0

這是因爲您在.psm1文件中使用Update-FormatData或Update-TypeData而發生的,這會阻止模塊加載兩次,因爲您無法重新註冊格式化信息。爲了使這項工作,使用的.psd1文件來指定類型和格式的文件:

@{ 
    ModuleToProcess='MyModule.psm1' 
    ModuleVersion = '1.0' 
    FormatsToProcess = MyModule.Format.ps1xml' 
    TypesToProcess = 'MyModule.Types.ps1xml' 
} 

請注意,這類型的錯誤是在公佈模塊相當普遍。因此,如果您的模塊沒有格式化,但導入了另一個模塊,那麼您必須修改該模塊才能正確導入它的格式化程序。