enrixk
Goto Top

Mit Powershell prüfen, ob GUI zum Prozess geöffnet ist

Hallo Powershell-Profis,

ich lasse mit dem folgenden Skript das Programm letsview starten. Das funktioniert in 80% der Fälle problemlos. In 20% der Fall startet zwar der Prozess letsview.exe, allerdings ohne, dass sich das GUI öffnet. Die Anwender wissen dann nicht mehr weiter.

Gibt es in Powershell eine Möglichkeit zu prüfen, ob sich die GUI zu dem Prozess geöffnet hat?
class LetsviewSetup{
	[string] $remote
		
	LetsviewSetup(){
		$this.remote="I:\Remote.v2\AppData\LetsView"  
		
		if(Get-Process -Name letsview -EA SilentlyContinue){
			Get-Process letsview* | Stop-Process
		}
	
		If(test-path -Path $this.remote){
	  		Remove-Item -Path $this.remote -Force -Recurse
		}	
	}
	
	[void] startLetsview(){
		Start-Process  -FilePath "C:\Program Files (x86)\LetsView\LetsView\letsview.exe"   
	}
	
	[void] endLetsview(){
		while(Get-Process -Name letsview -EA SilentlyContinue){
			#hier passiert gar nichts.
		}
		Remove-Item -Path $this.remote -Force -Recurse

	}
}
$start= [LetsviewSetup]::new()
$start.startLetsview()
$start.endLetsview()

Danke

Content-Key: 2837738433

Url: https://administrator.de/contentid/2837738433

Printed on: April 19, 2024 at 04:04 o'clock

Member: Tezzla
Solution Tezzla May 19, 2022 at 07:50:03 (UTC)
Goto Top
Moin,

Get-Process | Where-Object {$_.MainWindowTitle -ne ""}  

liefert dir alle geöffneten Fenstertitel zurück. Grenze das auf dein gewünschtes Fenster ein und prüfe, ob der Eintrag existiert. Danach kannst du dann noch automatisch die EXE abschießen und neustarten, falls gewünscht.

VG
Member: colinardo
Solution colinardo May 19, 2022 updated at 07:52:09 (UTC)
Goto Top
if ((Get-Process letsview).MainWindowHandle -ne 0){
   # main window handle
}else{
   # no main window handle
}
Grüße Uwe
Member: MrCount
Solution MrCount May 19, 2022 at 07:51:36 (UTC)
Goto Top
Servus,

versuche es mal hiermit
Get-Process |where {$_.mainWindowTItle -like "*DEIN_FENSTER-TITEL*"} |format-table id,name,mainwindowtitle –AutoSize  
Member: Enrixk
Solution Enrixk May 19, 2022 at 13:40:08 (UTC)
Goto Top
Ihr habt mir prima geholfen!