Anwendung aktivieren |
|
Mit Windows Script Host eine Anwendung (Programm) in den Vordergrund bringen und somit ativieren.
1. Möglichkeit: Programm-Name aus Prozessliste (Taskmanager) eintragen und Fenstertitel angebenDie AppActivate Methode versucht, eine Anwendung zu aktivieren, deren Titel dem Suchkriterium entspricht. Das gesuchte Programm muss natürlich ausgeführt sein.
Option Explicit
Dim pc, programm, fenstername Dim wmi, system, process Dim WshShell programm = "notepad.exe" fenstername = "Unbenannt - Editor" Set wmi = GetObject("winmgmts:") Set system = wmi.instancesOf("win32_process") For Each process In system If lcase(process.name)=programm Then Set WshShell = CreateObject("WScript.Shell") With WshShell ' Hier den exakt gleichen Namen eintragen der im Fensterkopf steht ' um die Anwendung zu aktiveren damit SendKeys das richtige Programm anspricht. .AppActivate fenstername End with Exit For End If Next2. Möglichkeit: Über die ProzessID (Taskmanager) aktivieren.Option Explicit
Dim WshShell, oProg Dim Pid Const PROGRAMM = "notepad.exe" Const PROGRAMM2 = "calc.exe" Set WshShell = CreateObject("WScript.Shell") Set oProg = WshShell.Exec(PROGRAMM) Pid = oProg.ProcessID 'Die Processid kann jetzt z.B in einer Datei gespeichert werden und später wieder mit einem anderen Script eingelesen werden 'Ein 2.Programm starten WshShell.run PROGRAMM2 'Das erste wieder in den Vordergrund bringen 'Vorher eine kurze Pause damit das Aktivieren nicht zu schnell aufgerufen wird WScript.sleep 500 WshShell.AppActivate(Pid) Zusatz:Um sicher zu gehen das alle anderen laufenden Prozesse (Anwendungen) nicht aktiv sind diese per Script minimieren ' Über die Shell Application
Option Explicit Dim WshSA Set WshSA= WScript.CreateObject ("Shell.Application") ' Alle Fenster minimieren: WshSA.MinimizeAll ... jetzt das gewünsche Fenster aktiveren mit AppActivate aktivieren ' Alle Fenster wiederherstellen WshSA.UndoMinimizeAll oder ' Desktop anzeigen (Ist in der Symbollleiste Schnellstart der Taskbar)
Option Explicit Dim WshShell, s Set WshShell = WScript.createobject("WScript.Shell") s = """" & WshShell. ExpandEnvironmentStrings ("%APPDATA%") & _ "\Microsoft\Internet Explorer\Quick Launch\Desktop anzeigen.scf""" WshShell.Run s
|