問題タブ [powershell-5.0]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
powershell - Win32_OptionalFeature の親機能を決定する
バックストーリー、2012-R2 では、Powershell v4.0 を使用して、Get-WindowsFeature
サーバー OS でのみ機能するコマンドレットにアクセスできます。子ノードは親ノードにキー付けされるため、ツリービュー ノードに入力するために必要な Parent フィールドが含まれます。
Windows 7/8.1 以降、コマンドレットを使用できません。デスクトップ OS では実行されません。ここには同じデータが表示されますが、親 ID フィールドはありません。WMI から親機能を特定するにはどうすればよいですか? 問題を解決する任意の回答を受け入れます。
http://msdn.microsoft.com/en-us/library/ee309383%28v=vs.85%29.aspx
つまり、現在インストールされている機能に基づいてツリービュー コントロールを設定するために使用される gwmi コマンドから .csv ダンプを生成しようとしています。みたいな。
powershell - 2 月の powershell 5 で LCM の CertificateID を設定する機能
DSC 展開を更新して、部分的な構成を使用して構成を分割しようとしています。そのためには、プッシュではなくプル プロセスを使用する必要があります。
次のような LCM の構成を適用しようとすると、次のようになります。
CertificateID を含めようとすると、次のようなエラーが表示されます。
当然のことながら、構成を適用しようとすると、渡された資格情報を復号化できず、イベント ビューに次のようなエラーが表示されます。
これを行う方法はありますか?プッシュ モデルで単一の構成を使用していたときに、これを certificateID と連携させました。
powershell - 後のバージョンと比較して、以前のバージョンの Powershell に欠けている主なものは何ですか?
歴史の授業のようなものを探しています。私は PowerShell の後発です。私はバージョン 4 で学習しましたが、バージョンの互換性が重要な場所での使用を検討しているコマンドレットの数が増えています。を実行すると、ほとんどの単体テストに合格しますpowershell -version 3
。一方、走ると真っ赤な海powershell -version 2
。コードベースをやみくもに作り直して、v4 より前のバージョンの PowerShell に対応できるようにするのではなく、それが何を意味するのかをある程度理解したいと思います。
バージョン間のいくつかの違いについて語っている投稿がいくつか ありますが、標準的なものは見つけられませんでしたし、コードベースの下位互換性を確保するために必要なレトロスペクティブな視点を取り入れたものも見つかりませんでした。
ここに私の具体的な質問があります:
以前のバージョンの PowerShell に欠けていて、後のバージョン用に記述されたコードがおそらく依存しているものは何ですか?
PowerShell 自体のバージョンには下位互換性がありますか? つまり、適切に作成されたスクリプトがバージョン 2 で正しく実行された場合、バージョン 3、4、および 5 で実行したときに同じように動作すると期待できますか?
class - PowerShell v5 クラス メソッド - 問題
PowerShell v5 の新しいクラス関数をいじって、メソッドをクラスに入れることができるかどうかを理解しようとしています。
以下を試して、少し遊んでみましたが、うまくいきませんでした。
プロパティを設定してコンピューター名を手動で入力しようとしましたが、オブジェクトの作成時に必要になると思いました
私が得ている例外は
$error からの完全な例外リンクはhttp://pastebin.com/WtxfYzb5にあります
$this.prop をもう少し使用しましたが、独自のパラメーターでコンストラクターを開始することはできません。
html - New-Object -ComObject "HTMLFile" を使用したローカル HTML ファイルの解析が壊れていますか?
パスの 6 か月間、問題なくパスワード有効期限スクリプトを実行しています。スクリプトは静的な html ファイルを読み取り、メモリ内のコンテンツの一部を変更します。その後、有効期限が切れるパスワードを持つすべてのユーザーに html メールが送信されます。
このスクリプトは、過去 1 週間程度で壊れたようです。さらに調査した結果、Powershell が新しい ComObject を作成し、その HTML ファイルを ComObject に書き込むセクションにエラーを絞り込みました。
エラーが発生しました:
以下のコード行を実行すると、上記のエラーが発生します。
write()
メソッドを呼び出すと、エラーが発生します。
過去 6 か月間正常に動作していたため、変更されたと考えられる唯一のことは、私のバージョンの powershell です。このスクリプトの実行を開始したとき、私は Powershell v4.0 を使用していたと思いますが、Windows Update の後、Powershell は現在 v5.0 になっていると思います。下記参照 :
スクリプトは Windows Server 2012 R2 OS で実行されています。
誰にもアイデアはありますか?
ComObject でメソッドを使用するように呼び出す他の質問でいくつかの提案を見てきましたIHTMLDocument2_write()
が、このメソッドを呼び出そうとすると存在しません。
アップデート :
私のバージョンの Powershell では、これがINDEED BROKENであることを確認できました。
同じOSでPowershellのバージョン以下の別のサーバーで同じコードをテストできました:
そして、コードは期待どおりに機能します。
この新しいバージョンの Powershell で何が使用できるか知っている人はいますか?
powershell - PowerShell v5 モジュールでクラスをエクスポートする方法
他のいくつかのスクリプトのライブラリのようにモジュールをセットアップしました。クラス宣言をスクリプトスコープ呼び出しに取得する方法がわかりませんImport-Module
。Export-Module
のような-class
引数で整理しようとしましたが、利用可能な-function
がありませ-class
ん。すべてのスクリプトでクラスを宣言する必要がありますか?
セットアップ:
- ~\documents\windows\powershell\modules\holidays\ 内の holiday.psm1
- アクティブなスクリプト呼び出し
import-module holidays
- Holidays.psm1 にはクラス オブジェクトを正しく返す別の関数がありますが、インポート後にアクティブなスクリプトからクラスの新しいメンバーを作成する方法がわかりません。
クラスは次のようになります。
powershell - New-Object -Property Hashtable が Win 10 のバージョン 5.0 でフィールドに入力されない
次のコードは、PowerShell 4.0 以前で正常に機能します。最新の Windows 10 ビルドのバージョン 5.0.10240.16384 で実行すると、新しいオブジェクト ($a) にフィールドが入力されません。これはバグですか、それとも何か変更されましたか?
バージョン 4.0 以前の結果:
バージョン 5.0
バージョン 5 の Get-Member
編集: これは、多くの既存のスクリプトに影響を与える重大な変更 (変更の場合) であることに基づいて、これに関するバグを Microsoft に提出しました。そのバグレポートに更新がある場合は、この質問を更新します。これが望ましい/変更された動作であることを示唆する可能性のある v5 の何かに誰かが遭遇した場合、私はまだフィードバックを探しています。興味があり、Win 10 マシンにアクセスできない場合は、v5 で他のテストも試してみてください。