使用できます
aspnet_regiis.exe
のバージョンを IIS に登録するコマンド ラインで (最初に正しいディレクトリに cd した場合)、これはすべてうまく機能します。
しかし、IIS に既に登録されているバージョンを確認する方法はありますか?
のように、バージョンを登録したいのですが、すでに登録されているかどうかわかりません。どのように私は言うでしょうか?
次のチェックを実行して、登録済みのバージョンを確認できます。
aspnet_regiis.exe -lv
登録されたフレームワークは、登録された aspnet_isapi.dll の場所を含む行を返す必要があります
appcmd.exe リスト apppool /managedRuntimeVersion:v4.0
これにより、指定されたランタイム バージョンのインストール済みアプリ プールがすべて一覧表示されるため、何も返されない場合は、ランタイムが登録されていない可能性があります。
appcmd.exe list config -section:system.webServer/isapiFilters
登録された isapi フィルターのリストを返す必要があります。たとえば、"c:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_filter.dll" のように、フレームワーク フォルダーに存在する aspnet_filter.dll がその 1 つです。
もう 1 つの考えられる解決策は、.net コードを使用して、利用可能なアプリケーション プールをスキャンし、それらのランタイム バージョンを取得することです。
using Microsoft.Web.Administration;
...
public static bool IsAspNetRegistered(string v = "v4.0")
{
using (var mgr = new ServerManager())
{
return mgr.ApplicationPools.Any(pool => pool.ManagedRuntimeVersion == v);
}
}