[解決済み】.NET 4ランタイムでPowerShellを実行するにはどうしたらいいですか?
質問
いくつかの.NETアセンブリを管理するPowerShellスクリプトを更新しています。このスクリプトは、.NET 2(PowerShellが動作するフレームワークの同じバージョン)に対して構築されたアセンブリ用に書かれていましたが、現在は.NET 2アセンブリだけでなく、.NET 4アセンブリでも動作させる必要があります。
.NET 4は旧バージョンのフレームワークに対して構築されたアプリケーションの実行をサポートしているので、.NET 4アセンブリに対してPowerShellを実行する必要がある場合、.NET 4ランタイムで起動することが最もシンプルな解決策のように思われます。
.NET 4 ランタイムで PowerShell を実行するにはどうすればよいですか?
どのように解決するのですか?
PowerShell(エンジン)は、.NET 4.0で正常に動作します。PowerShell (コンソールホストと ISE これは、古いバージョンの.NETに対してコンパイルされているためです。 レジストリの設定により システム全体にロードされる.NETフレームワークを変更する これにより、PowerShell は .NET 4.0 クラスを使用できるようになります。
reg add hklm\software\microsoft\.netframework /v OnlyUseLatestCLR /t REG_DWORD /d 1
reg add hklm\software\wow6432node\microsoft\.netframework /v OnlyUseLatestCLR /t REG_DWORD /d 1
ISEだけを.NET 4.0を使うようにアップデートするには、設定($psHomepowershell_ise.exe.config)ファイルを次のようなチャンクに変更すればよいでしょう。
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0.30319" />
</startup>
</configuration>
PowerShell API (System.Management.Automation.PowerShell) を使用して PowerShell を呼び出す .NET 4.0 アプリケーションは問題なく構築できますが、以下の手順により、既製の PowerShell ホストを .NET 4.0 で動作させることができます。
レジストリキーは不要になったら削除してください。これらはマシン全体のキーであり、.net 2や.net 3.5を使用しているアプリケーションも含め、すべてのアプリケーションを.NET 4.0に強制的に移行させます。
関連
-
[解決済み] 実際のサービスはデータを返すのに、なぜWebServiceはnullを返すのですか?
-
[解決済み] .NETコンソールアプリケーションでアプリケーションのパスを取得するにはどうすればよいですか?
-
[解決済み] PowerShellでコードをコメントアウトする方法とは?
-
[解決済み] .NETアプリケーションを強制的に管理者として実行させるにはどうしたらいいですか?
-
[解決済み] Entity FrameworkとLINQ to SQLの比較
-
[解決済み] .NET 4.0 プロジェクトで .NET 2.0 混合モード アセンブリを参照するために必要な「追加設定」は何ですか?
-
[解決済み] HashSetとListの性能比較
-
[解決済み】PowerShellスクリプトを実行する方法
-
[解決済み】マシンの.NET Frameworkのバージョンを返すPowerShellスクリプト?
-
[解決済み】'useLegacyV2RuntimeActivationPolicy'は、.NET 4 configで何をするのでしょうか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] .net 4.5アップグレード後、System.Web.Httpが見つからない
-
[解決済み] C++/CLIにおけるキャレット('^')の意味は?
-
[解決済み] SQL Server Compact EditionデータベースのLINQ to SQLで、"Row not found or changed "例外を解決するにはどうすればよいですか?
-
[解決済み] VB.NETで線を引く方法
-
[解決済み] .Netの配列のLongLengthの目的は何ですか?
-
[解決済み] gacutil.exeはどこですか?
-
[解決済み] 列挙型を文字列に変換する
-
[解決済み] .net の OOM 問題を解決する必要があります。
-
[解決済み] インストールされたPowerShellのバージョンを確認する
-
[解決済み】PowerShellでZIPアーカイブを作成する方法は?