Reinhard77
Lieutenant
- Registriert
- Feb. 2019
- Beiträge
- 900
Hallo,
ich suche nach einer Möglichkeit den Status bzw. den Installationsprozess von .msi Dateien abzufragen.
Dazu habe ich folgende Lösung gefunden, die auch einwandfrei funktioniert. Doch habe ich festgestellt, dass der von Windows gestartete Prozess "msiexec" relativ lange braucht, bis der beendet wurde, was somit die Installation um ein paar Minuten verlangsamt, obwohl die Installation des jeweiligen Programms schon längst abgeschlossen ist.
Wieso ist das so und wie kann ich es so lösen, dass ich nicht auf den Prozess "msiexec" warten muss?
Im Netz stehen viele Hinweise, mit ExitCode usw. doch wenn ich die teste funktionieren die nicht so wirklich.
Hier der PowerShell Code:
ich suche nach einer Möglichkeit den Status bzw. den Installationsprozess von .msi Dateien abzufragen.
Dazu habe ich folgende Lösung gefunden, die auch einwandfrei funktioniert. Doch habe ich festgestellt, dass der von Windows gestartete Prozess "msiexec" relativ lange braucht, bis der beendet wurde, was somit die Installation um ein paar Minuten verlangsamt, obwohl die Installation des jeweiligen Programms schon längst abgeschlossen ist.
Wieso ist das so und wie kann ich es so lösen, dass ich nicht auf den Prozess "msiexec" warten muss?
Im Netz stehen viele Hinweise, mit ExitCode usw. doch wenn ich die teste funktionieren die nicht so wirklich.
Hier der PowerShell Code:
PowerShell:
$ExampleNameInstall = Start-Process msiexec.exe -Wait -ArgumentList '/i C:\ExampleName.msi'
#start installation of ExampleName
$ExampleNameInstall
if (Get-Process | Where-Object {$_.Name -eq "msiexec"})
{
#make a write host while installation is present
do{
Write-Host "Install Program ExampleName..." -ForegroundColor Yellow
Start-Sleep -Seconds 20
}while (Get-Process -WarningAction SilentlyContinue -ErrorAction SilentlyContinue | Where-Object {$_.Name -eq "msiexec"})
}
else
{
Write-Host "Program ExampleName was not installed"
}
Zuletzt bearbeitet: