スクリプトを開発およびデバッグするには、Windows7で新しいIISAdministrationPowerShellコマンドレットを使用する必要があります。このモジュールはデフォルトではWindows7に存在しないため、インストールしてみました。このために、Windows Management Framework 5.1をインストールして、PowerShellGetモジュールが使用可能なPowerShell5.1があることを確認しました。
その後、次のコマンドを使用してIISAdministrationモジュールをインストールしました。
Install-Module -Name IISAdministration
エラーは報告されませんが、使用可能なモジュールを一覧表示しようとすると、インストールされているコマンドレットが表示されません。
PS D:\> get-module -ListAvailable
Directory: C:\Program Files\WindowsPowerShell\Modules
ModuleType Version Name ExportedCommands
---------- ------- ---- ----------------
Script 1.1.0.0 IISAdministration
Binary 1.0.0.1 PackageManagement {Find-Package, Get-Package, Get-PackageProvider, Get-Packa...
Script 1.0.0.1 PowerShellGet {Install-Module, Find-Module, Save-Module, Update-Module...}
実稼働のWindowsServer 2012 R2マシンでこのコマンドを実行すると、[ExportedCommands]列にコマンドレットが表示されます。
モジュールをスクリプトまたはPowerShellコンソールに直接インポートしようとすると、次のエラーが発生します。
PS D:\> Import-Module IISAdministration
Import-Module : Could not load type 'Microsoft.Web.Administration.SslFlags' from Assembly
'Microsoft.Web.Administration, Version=7.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.
At line:1 char:1
+ Import-Module IISAdministration
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [Import-Module], TypeLoadException
+ FullyQualifiedErrorId : System.TypeLoadException,Microsoft.PowerShell.Commands.ImportModuleCommand
私のセットアップの何が問題になっていて、それを修正する方法は?
Lex Liが上に投稿したコメントに同意します。新しいサーバーオペレーティングシステムから古いサーバーオペレーティングシステムにDLLを移動すると、問題が発生します。
私のウェブサイトインストールスクリプトはWindows10で構築されており、Windows 2012以降でのみ使用されるはずでしたが、サイトのコピーが必要でインポートされないWindows 2008-R2サーバーを見つけましたIISAdministration、上記のOPでエラーが発生します。
回避策:Carbonモジュールをダウンロードしてインストールします。
IISAdministrationモジュールが必要なものによっては、Carbonモジュールで実行可能な代替品を見つけることができる場合があります。私の場合、IISAdministrationをGet-IISAppPoolコマンドレット専用に使用していました。 Carbonには、Windows2008-R2で私のために仕事をした機能的に類似したGet-IisAppPoolコマンドレットがあることがわかりました。
カーボンモジュールは、モジュールのWebサイトにアクセスして見つけることができます。 Chocolateyを使用しましたが、簡単にインストールできました。
http://get-carbon.org/about_Carbon_Installation.html
これが誰かに役立つことを願っています、私は質問がかなりの数のヒットを得ているのを見ます。
リモートサーバー管理ツール(RSAT)をインストールしましたか?
これらのツールがインストールされていない場合は、これが問題である可能性があります。