ขณะนี้ฉันกำลังพยายามเขียนบท (PowerShell) การติดตั้ง Visual Studio 2017 อัตโนมัติบน VM ที่โฮสต์ใน Azure DevTest Lab สคริปต์นั้นง่ายมากเช่น
try
{
Invoke-WebRequest -Uri $vs2017Url -OutFile $vs2017Exe;
}
catch
{
Write-Error "Failed to download VS 2017";
}
try
{
Start-Process -FilePath $vs2017Exe -ArgumentList "--add Microsoft.VisualStudio.Workload.NetCoreTools;includeRecommended --passive";
}
catch
{
Write-Error "Failed to install VS 2017";
}
ที่ไหน $vs2017Url
เป็น URL ของ exe ติดตั้ง VS ปัญหาคือว่า exe VS 2017 เปิดใช้งาน UAC ซึ่งทำให้เป็นการยากที่จะทำให้เป็นอัตโนมัติขณะที่เปิดกล่องโต้ตอบ UAC "คุณต้องการอนุญาตให้แอปนี้ทำการเปลี่ยนแปลงอุปกรณ์ของคุณหรือไม่" จึงต้องมีการแทรกแซงของผู้ใช้ อย่างไรก็ตามมีรอบนี้หรือไม่ (VMs จะถูกปรับใช้โดยใช้ Azure สิ่งประดิษฐ์ ฟังก์ชันการทำงานใน Azure)