Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Aktives Fenster ermitteln

Mitglied: Ileies

Ileies (Level 1) - Jetzt verbinden

05.04.2019 um 21:02 Uhr, 479 Aufrufe, 5 Kommentare

Hallo zusammen,

Wie kann ich mit Batch ermitteln, welches Programm gerade im Vordergrund läuft?
Mitglied: rubberman
05.04.2019 um 22:34 Uhr
Das ist sehr einfache. Sobald du das Batchscript ausführst, ist das Batchfenster im Vordergrund. Das Programm ist also immer cmd.exe.

Steffen
Bitte warten ..
Mitglied: 139374
05.04.2019, aktualisiert um 22:59 Uhr
Ein Freitag der Extraklasse 😂😂😂

Was so manch ein perverser mit Batch alles anstellen will 🙃🙃🙃*

An den TO: Gehe 20 Schritte vor und biege hier ab ---v

https://docs.microsoft.com/en-us/windows/desktop/api/winuser/nf-winuser- ...

Gehe nicht über Los, ziehe keine 100 Mäuse ein und ziehe sofort im Zuchthaus ein .... 🚑🤕
Bitte warten ..
Mitglied: rubberman
LÖSUNG 05.04.2019, aktualisiert um 23:53 Uhr
Apropos timeout. Damit könnte man zumindest testen was passiert wenn das Batchfenster den Fokus verliert. Ich lass mal noch ein bisschen Batch dabei. Eigentlich Get-Process in PS ...
01.
@echo off &setlocal
02.

03.
set foregroundproc=powershell -nop -ep Bypass -c "$c=Add-Type -Name pInv -PassThru -MemberDefinition '[DllImport(\"user32.dll\")]public static extern IntPtr GetForegroundWindow();[DllImport(\"user32.dll\")]public static extern uint GetWindowThreadProcessId(IntPtr hWnd, ref uint processId);';$procid=[UInt32]0;$null=$c::GetWindowThreadProcessId($c::GetForegroundWindow(),[ref]$procid);exit $procid;"
04.

05.
setlocal EnableDelayedExpansion
06.
for /l %%i in () do (
07.
  %foregroundproc%
08.
  echo PID=!errorlevel!
09.
  for /f delims^=^" %%i in ('tasklist /nh /fi "pid eq !errorlevel!" /fo csv') do echo %%i
10.
  >nul timeout /t 1 /nobreak
11.
)
Steffen
Bitte warten ..
Mitglied: Ileies
06.04.2019, aktualisiert um 18:40 Uhr
@rubberman

Und wie kann ich es statt als Schleife nur einmal abfragen?

Oder geht das nur so:

01.
for /l %%i in () do (
02.
  %foregroundproc%
03.
  echo PID=!errorlevel!
04.
  for /f delims^=^" %%i in ('tasklist /nh /fi "pid eq !errorlevel!" /fo csv') do echo %%i & goto jump
05.
)
06.

07.
:jump
Bitte warten ..
Mitglied: rubberman
LÖSUNG 06.04.2019, aktualisiert um 19:58 Uhr
Zitat von Ileies:
Und wie kann ich es statt als Schleife nur einmal abfragen?
Indem du die FOR /L Schleife um die 3 Zeilen einfach weglässt?
Und wenn du statt
echo %%i
ein
set "variablename=%%i"
schreibst, hast du den Name des Prozesses in einer Variablen. Und wenn du die Ausgabe der Prozess ID nicht brauchst, schmeißt du sie eben raus. Was weiß ich ... Das hast du doch selbst durch Ausprobieren 10x schneller geklärt, als hier auf eine Antwort zu warten.

Steffen
Bitte warten ..
Ähnliche Inhalte
Hyper-V

Hyper V Failovercluster Verstaendnisproblem Aktiv Aktiv bzw aktiv Passiv

Frage von moekewaHyper-V4 Kommentare

Hallo, ich habe da leider ein kleines Verständnisproblem bei Hyper V Failoverclustering. ich habe es jetzt wie folgt verstanden: ...

Microsoft Office

Wordfenster nicht aktiv

Frage von atomas42Microsoft Office3 Kommentare

Hallo, ich habe ein Problem mit Word 2016 evtl mit Verbindung von Windows 10 64 bit. Der Laptop wurde ...

Festplatten, SSD, Raid

Speicherverbrauch ermitteln

Frage von YannoschFestplatten, SSD, Raid8 Kommentare

Hallo zusammen, habe einen 2k8R2 hier mit einer D Part von 724 GB frei sind nurnoch knapp 70 GB ...

Batch & Shell

Dateigröße ermitteln

gelöst Frage von IleiesBatch & Shell2 Kommentare

Hallo zusammen, Wie kann ich mit Batch nur die Dateien von einem Ort auf den Anderen kopieren, die kleiner ...

Neue Wissensbeiträge
Outlook & Mail

Windows 10 Migration - Vergesst nicht die lokalen Postfächer!

Tipp von MarcoG vor 35 MinutenOutlook & Mail

Wie man automatisiert PST Dateien finden kann ohne dabei auch nur einen Finger krumm zu machen erfährt Ihr in ...

Outlook & Mail

Outlook 2016 stürzt ab, wenn man ein (at)- Zeichen im Text einer neuen E-Mail schreibt

Tipp von Enriqe vor 1 StundeOutlook & Mail2 Kommentare

Bei uns in der Firma häuften sich die Fälle, bei denen sich Outlook kommentarlos verabschiedet, wenn man ein - ...

Google Android

Google sperrt Android-Updates und den Play Store für Huawei

Information von Deepsys vor 1 TagGoogle Android8 Kommentare

Das finde ich schon ein starkes Stück, Trump der Welt Diktator. So kann man mit einem Dekret mal eben ...

Windows 7

Südkoreas Regierung setzt auf Linux, um Windows 7 Clients abzulösen

Information von kgborn vor 1 TagWindows 74 Kommentare

Kleiner Infosplitter zum Wochenanfang: Während München (LiMux) und die niedersächsische Finanzverwaltung von Linux auf einen Windows 10-Client (und Office) ...

Heiß diskutierte Inhalte
Windows 10
Windows am MAC
Frage von LeeX01Windows 1016 Kommentare

Guten Abend zusammen, ich habe gerade ein Macbook Pro vor mir welches ich mit einem Windows 10 to go ...

Humor (lol)
Mitarbeiter meldet: VPN funktioniert nicht
gelöst Frage von Epixc0reHumor (lol)13 Kommentare

Servus, einer unserer Mitarbeiter meldete heute, sein VPN funktioniert Zuhause nicht, im LTE Netz aber schon. Per Teamviewer hin ...

Linux Userverwaltung
Ist sudo auf Servern Pflicht?
gelöst Frage von lcer00Linux Userverwaltung13 Kommentare

Hallo zusammen, wir haben für einige Netzwerkdienste einige Debian Server. Auf diesen Servern arbeiten keine Benutzer im eigentlichen sinne. ...

Batch & Shell
Powershell Datum der zuletzt eingespielten Patche bei remote Servern ermitteln
Frage von bensonhedgesBatch & Shell13 Kommentare

Hallo, ich möchte gerne anhand einer Serverliste (bsp. computers.txt) via PS ermitteln, wann derjeweilige Server zuletzt gepatcht wurde (Liste ...