4

System.Diagnostics.Process一部のSystem.Diagnostics.ProcessStartInfoクラスを使用するpowershellスクリプトを作成しています。

これらのクラスは、次のように完全に正常に機能します。

$processInfo = new-object System.Diagnostics.ProcessStartInfo

$processInfo.FileName = "dism.exe"
$processInfo.UseShellExecute = $false
$processInfo.RedirectStandardOutput = $true
$processInfo.Arguments = "/Apply-Image /ImageFile:C:\images\Win864_SL-IN-837.wim /ApplyDir:D:\ /Index:1"

$process = new-object System.Diagnostics.Process
$process.StartInfo = $processInfo

ただし、 System.IO.StreamReader クラスも使用したいのですが、次のようにまったく同じことを試してみると:

$stream = new-object System.IO.StreamReader

またはこのように

$stream = new-object System.IO.StreamReader $process.FileName

エラーが発生します:

New-Object : Constructor not found. Cannot find an appropriate constructor for type System.IO.StreamReader.
At C:\Users\a-mahint\Documents\Testing\inter.ps1:17 char:21
+ $stream = new-object <<<<  System.IO.StreamReader
    + CategoryInfo          : ObjectNotFound: (:) [New-Object], PSArgumentException
    + FullyQualifiedErrorId : CannotFindAppropriateCtor,Microsoft.PowerShell.Commands.NewObjectCommand

私はこれを30分間理解しようとしてきました...何が起こっているのですか? どちらのクラスも .NET 4.0 の一部です

4

1 に答える 1