だから私は奇妙な問題を抱えています。次のようなコマンドを実行すると:
New-VM -Name "MattTest" -MemoryStartupBytes 2GB -BootDevice CD -SwitchName Lab -path c:\VMdocs -NewVHDSizeBytes 40GB –NewVHDPath c:\base.vhdx
Set-VMDvdDrive -VMName MattTest -Path C:\ISOFiles\Windows2008.
Start-VM -Name MattTest
それは正常に動作しますが、スクリプトを作成すると大量のエラーが発生します。たとえば、PS.ps1 というスクリプトでまったく同じことを Powershell で実行すると、次のようになります。
New-VM : パラメータが無効です。指定された基準ではスイッチが見つかりません。At C:\Users\mrsmith\Desktop\PS.ps1:1 char:1 + New-VM -Name "MattTest" -MemoryStartupBytes 2GB -BootDevice CD -SwitchName Lab - ... + ~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidArgument: (Lab:String) [New-VM], VirtualizationInvalidArgumentException + FullyQualifiedErrorId : InvalidParameter,Microsoft.HyperV.PowerShell.Commands .NewVM コマンド
Set-VMDvdDrive : パラメーターが無効です。Hyper-V は MattTest という名前の仮想マシンを見つけることができませんでした。C:\Users\mrsmith\Desktop\PS.ps1:3 char:1 + Set-VMDvdDrive -VMName MattTest -Path C:\ISOFiles\Windows2008. + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~ + CategoryInfo: InvalidArgument: (MattTest:String) [Set-VMDvdDrive], VirtualizationInvalidArgumentException + FullyQualifiedErrorId: InvalidParameter,Microsoft.HyperV.PowerShell.Commands.SetVMDvdDriveCommand
Set-VMDvdDrive : パラメーターが無効です。DVD ドライブが見つかりません。C:\Users\mrsmith\Desktop\PS.ps1:3 char:1 + Set-VMDvdDrive -VMName MattTest -Path C:\ISOFiles\Windows2008. + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~ + CategoryInfo: InvalidArgument: (:) [Set-VMDvdDrive], VirtualizationInvalidArgumentException + FullyQualifiedErrorId: InvalidParameter,Microsoft.HyperV.PowerShell.Commands.SetVMDvdDriveCommand
Start-VM : パラメーターが無効です。Hyper-V は MattTest という名前の仮想マシンを見つけることができませんでした。At C:\Users\mrsmith\Desktop\PS.ps1:5 char:1 + Start-VM -Name MattTest + ~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidArgument: (MattTest:String) [Start-VM], VirtualizationInvalidArgumentException + FullyQualifiedErrorId : InvalidParameter,Microsoft.HyperV.PowerShell.Commands.StartVMCommand
何が原因なのかわからない?モジュールと関係があるのでしょうか。確認したところ、Hyper-V コマンドレットが実行されているためです (これらを手動で入力しても問題ないと考えてください)。
補足質問: これらの一連の手順は、「Windows XXXX のインストール」画面まで表示されます。そのプロセスを自動化する方法はありますか? またはそうではありません(次へをクリックする、ハードドライブを選択する、インストールするなど...