我的azure帐户上有一个虚拟机,我想传递一个简单的PowerShell脚本,该脚本应该只打开Microsoft Paint程序。
powershell脚本是:
& "C:\Windows\system32\mspaint.exe"
这是获取虚拟机的代码,并尝试在远程虚拟机上应用此脚本。
var testingVm = _azure.VirtualMachines.GetById(
"...");
testingVm.Update()
.DefineNewExtension("InstallSoftware")
.WithPublisher("Microsoft.Compute")
.WithType("CustomScriptExtension")
.WithVersion("1.9")
.WithPublicSetting("fileUris", new string[]
{
"https://.../powershellscripts/OpenPaint.ps1"
})
.WithProtectedSetting("Url", "https://.../powershellscripts/gource-0.42-setup.exe")
.WithProtectedSetting("commandToExecute", "powershell -ExecutionPolicy Bypass -File OpenPaint.ps1")
.Attach()
.Apply();
文件下载并且脚本正确放置在C:\ Packages \ Plugins \ Microsoft.Compute.CustomScriptExtension \ 1.9 \ Downloads \ 0文件夹中,没有Paint未打开,并且在Azure门户上的状态为这种说法永远被定为“过渡”。 (我还确保vm在该目录中有绘制,并且执行策略设置为Bypass)。
我做错了什么?