0

PowerShell v3 をインストールし、ローカル ワークステーションから ISE を起動します。サーバー(win2K8R2 WMF 3がインストールされている)へのリモートタブを開くと、powerShell V1セッションを取得しているようです。$host 変数を調べてこれを確認しました。

> Name             : ServerRemoteHost Version          : 1.0.0.0
> InstanceId       : f0b4913e-95a8-4d6b-9aaa-f869a5b2a8fd UI            
> : System.Management.Automation.Internal.Host.InternalHostUserInterface
> CurrentCulture   : en-US CurrentUICulture : en-US PrivateData      : 
> IsRunspacePushed :  Runspace         :

このサーバーには WMF 3.0 がインストールされており、ISE または PowerShell プロンプトをサーバーからローカルで開くと、v3 セッションが開始されます。

他のマシンはこの動作を表示せず、ローカルまたはリモート タブで開いたときに powershell v3 を実行します

この動作のトラブルシューティングに困っています。リモート タブで v3 セッションを開く必要があります。

何かご意見は?

4

2 に答える 2

1

実行中のPowerShellのバージョンを確認するには、変数を使用します$PSVersionTable

の値$PSVersionTable.PSVersionは、PowerShellのバージョンを示します。

$PSVersionTable変数の内容の例を次に示します。

Name                           Value
----                           -----
PSVersion                      3.0
WSManStackVersion              3.0
SerializationVersion           1.1.0.1
CLRVersion                     4.0.30319.17929
BuildVersion                   6.2.9200.16384
PSCompatibleVersions           {1.0, 2.0, 3.0}
PSRemotingProtocolVersion      2.2
于 2012-11-02T01:19:54.263 に答える
0

元のポスターはすでに移動していると確信していますが、他の誰かが答えを探しているなら、ここにあります. 一部のモジュールでは、PowerShell 自体ではなく ServerRemoteHost のバージョンに準拠しているかどうかを確認し、PowerShell のバージョンを確認しているようです。モジュール定義の形式が悪いだけです。PSRemoteRegistry はそのような例の 1 つです。

問題を解決するには (または問題を回避するには)、問題のモジュールの .psd1 ファイルを編集し、バージョン要件を 1.0 に戻します。

このモジュールに必要な Windows PowerShell エンジンの最小バージョン

PowerShellVersion = '1.0'

このモジュールに必要な Windows PowerShell ホストの名前

PowerShellHostName = ''

このモジュールに必要な Windows PowerShell ホストの最小バージョン

PowerShellHostVersion = '1.0'

問題が解決しました。

于 2014-01-06T17:43:32.140 に答える