Usar el instalador personalizado en instalaciones desatendidas
La función de instalador personalizado admite el modo de instalación desatendida, que permite la instalación y la configuración automáticas. A continuación se explica cómo usar esta función:
Generación de un paquete del instalador personalizado
Conéctese a su Devolutions Account en Archivo – Devolutions Account.
Haga clic en gestor del instalador personalizado, seleccione la versión actual de Remote Desktop Manager y marque la casilla Cifrar la configuración con una contraseña en el paquete del instalador.
Haga clic en Crear.
Instalación del paquete del instalador personalizado
El siguiente script de PowerShell instala automáticamente el paquete generado previamente e inyecta la contraseña. Tenga en cuenta que la inyección de la contraseña solo se produce si ha marcado la casilla Cifrar la configuración con una contraseña en el paquete del instalador en el paso 2.
Este es el script completo para guardar en formato .ps1:
param (
[Parameter(Mandatory = $true, Position = 0, HelpMessage = "Path to MSI for Remote Desktop Manager")]
[ValidateNotNullOrEmpty()]
[string]
$MsiPath,
[switch]
$AskPassword,
[parameter(ValueFromPipeline)][string]$password
)
function Read-Password {
param (
[string]$Prompt = "Enter Password"
)
if ($password) {
$securePassword = ConvertTo-SecureString -AsPlainText -Force $password
}
else {
$securePassword = Read-Host -AsSecureString -Prompt $Prompt
}
$password = [System.Runtime.InteropServices.Marshal]::PtrToStringAuto(
[System.Runtime.InteropServices.Marshal]::SecureStringToBSTR($securePassword)
)
return $password
}
$currentPrincipal = New-Object Security.Principal.WindowsPrincipal([Security.Principal.WindowsIdentity]::GetCurrent())
if (!$currentPrincipal.IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {
Write-Warning "Not running as administrator. You may run into issues"
}
& 'msiexec.exe' /i "${MsiPath}" /qn
if ($AskPassword) {
$password = Read-Password
$pipeHandle = [System.IO.Pipes.NamedPipeClientStream]::new('.', 'DevolutionsUpdater', [System.IO.Pipes.PipeDirection]::Out)
try {
$pipeHandle.Connect(15000)
$passwordBytes = [System.Text.Encoding]::UTF8.GetBytes($password)
$pipeHandle.Write($passwordBytes, 0, $passwordBytes.Length)
$pipeHandle.Flush()
}
catch {
Write-Error "Failed to connect to installer instance. Is the installer running with administrator or is RDM already installed?"
}
finally {
$pipeHandle.Close()
}
}Al instalar el paquete, es importante proporcionar la contraseña de forma segura. Para lograrlo, use una canalización con nombre para evitar que la contraseña se escriba en el disco o se registre.
Para ejecutar el script:
Para canalizar la contraseña desde una variable de entorno:
Véase también
Última actualización
¿Te fue útil?