0
Я хочу, чтобы моя моя надстройка scvmm создавала ярлыки для моих vm bakcups автоматически. Я использую Powershell-командлеты на хосте:создание .lnk с powershell не работает
string command2 = "$shell = New-Object -ComObject WScript.Shell;";
foreach (var vm in VMs)
{
command2 = command2 + string.Format("${1} = shell.CreateShortcut(\"{0}\\{1}\\{2}.lnk\"); ${1}.TargetPath = \"..\\_VMBackup\\{2}\\{1}\"; ${1}.Save();", backupDir, vm.Name, date);
}
это, как я вызываю их:
PowerShellContext.ExecuteScript<Host>(string.Format("Invoke-SCScriptCommand -Executable \"{0}\" -VMHost (Get-SCVMHost -ID \"{1}\") -CommandParameters \"{2}\" -RunAsynchronously -TimeoutSeconds 360000", PowershellPath, VMs.First(), command2), (vms, error) => { if (error != null) { } else { } });
Что-то, кажется, неправильно, хотя, потому что я не буду выполнять должным образом, даже если он работает если я попробую это в оболочке. Есть идеи?
Hm .. Теперь я получаю сообщение об ошибке, что аргумент после «(« в строке ».. .Save();» ожидался. Что именно не так? Я пробовал сценарий powershell sucece ssfully на моем рабочем столе - это работает. Почему я получаю эту ошибку от хоста? – 000000000000000000000
.. также говорит «)« на »..150112-0859.önl); является неожиданным токеном. – 000000000000000000000