我在azure中使用资源管理器模板来创建VM,并在创建VM后使用DSC扩展来安装可执行文件。我有基本工作,即它将我的文件下载到目录并安装测试可执行文件。此特定可执行文件安装在计算机级别。
我需要安装的可执行文件必须安装在用户级别,而不是机器级别。
我尝试了几种方法。
$username = 'username'
$password = 'password'
$securePassword = ConvertTo-SecureString $password -AsPlainText -Force
$credential = New-Object System.Management.Automation.PSCredential $username, $securePassword
Start-Process "C:\Deployment\installer.exe" -Credential $credential -ArgumentList ' /S -noprofile -command &{Start-Process -verb runas}'
我也试过开始另一个过程
$password = convertto-securestring "password" -asplaintext -force
$psi = new-object "Diagnostics.ProcessStartInfo"
$psi.UseShellExecute = $false
$psi.UserName = "username"
$psi.Password = $password
$psi.FileName = $dest
$psi.RedirectStandardOutput = $true
$psi.Arguments = " /S"
$proc = [Diagnostics.Process]::Start($psi)
$result = $proc.StandardOutput.ReadToEnd()
$proc.WaitForExit()
我还尝试过Azure资源模板中的CustomExtension,但仍然是相同的。