Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Fortschrittsanzeige in Batch - Anzeigedauer einer geöffneten Exe

Frage Entwicklung Batch & Shell

Mitglied: stoepfel

stoepfel (Level 1) - Jetzt verbinden

27.04.2010 um 10:11 Uhr, 5704 Aufrufe, 4 Kommentare

Hallo,

mit einer Batch öffne ich eine Exe. Nun soll in der Kommandozeile so lange eine Fortschrittsbalken angezeigt werden (durch fortlaufende Punkte), bis diese besagte Exe wieder automatisch geschlossen wird.

Wie kann ich dies realisieren? Leider bin ich kein Experte in der Batch-Programmierung und freue mich über jegliche Ideen.

Vielen Dank.
Stefan
Mitglied: LotPings
27.04.2010 um 15:36 Uhr
Hallo Stefan,

ein Fortschrittsbalken hat eine definierte Länge und über den prozentualen Anteil soll man erkennen wie lange der Vorgang noch ca. dauert.
Deine Pünktchen sind also nur eine Pseudoberuhigung das sich noch etwas tut.
Das Problem ist, das die Batch nur die Kontrolle hat wenn die Exe per
Start "Titel" x:\Pfad\deine.Exe 
In den Hintergrund geschickt wird.

Die Batch kann also allenfalls über eine Schleife prüfen ob der Process der Exe noch läuft oder das Fenster noch existiert; deinen Punkt setzen, ein Bisschen warten und das ganze wiederholen.
IMO etwas viel Aufwand mit zweifelhaftem Ergbenis.

Gruß
LotPings

PS: Willkommen im Forum
Bitte warten ..
Mitglied: rubberman
27.04.2010 um 16:20 Uhr
Hallo stoepfel,

LotPings hat selbstverständlich Recht. Ein Progressbar ist das, was du vorhast nicht - und Batch ist für solche Vorhaben auch suboptimal.
Aber, um zu zeigen wie sowas prinzipiell aussieht, hier mal am Beispiel Notepad:
01.
@echo off &setlocal 
02.
 
03.
:: *Notepad als Beispiel: 
04.
start "" "notepad.exe" 
05.
 
06.
:: *Schleife laufen, bis Prozess sichtbar ist 
07.
:loop1 
08.
tasklist /nh /fi "imagename eq notepad.exe" 2>&1|findstr /b /i /l /c:"notepad.exe">nul &&goto loop2 
09.
ping -n 1 localhost>nul 
10.
goto loop1 
11.
 
12.
:: *Schleife laufen und Punkte malen, bis Notepad geschlossen ist 
13.
:loop2 
14.
<nul set /p "=." 
15.
tasklist /nh /fi "imagename eq notepad.exe" 2>&1|findstr /b /i /l /c:"notepad.exe">nul ||goto ahead 
16.
ping -n 2 localhost>nul 
17.
goto loop2 
18.
 
19.
:ahead 
20.
echo. 
21.
 
22.
pause
Grüße
rubberman
Bitte warten ..
Mitglied: LotPings
27.04.2010 um 16:55 Uhr
Hallo rubberman,
schön das du mir die Arbeit abgenommen hast

Deine ansonsten gut ausgeführte Batch hat bei mir nicht funktioniert, weil notepad.exe hier nur ein Starter für mein TextPad ist und deshalb endlos gewartet hat.

Vielleicht wäre einfach eine kurze Wartezeit am Anfang eine Alternative - wenn die Anwendung danach nicht läuft endet die Batch eben.

Gruß
LotPings
Bitte warten ..
Mitglied: rubberman
27.04.2010 um 19:30 Uhr
Zitat von LotPings:
Hallo rubberman,
schön das du mir die Arbeit abgenommen hast

Hallo Lord ...aber gerne doch

Zitat von LotPings:
Deine ansonsten gut ausgeführte Batch hat bei mir nicht funktioniert, weil notepad.exe hier nur ein Starter für mein
TextPad ist und deshalb endlos gewartet hat.

Ist ja 'ne bodenlose Frechheit Dann ist mspaint.exe sicher auch nur ein Starter für Paint.Net So kann das mit den Beispielen nicht funktionieren ...

Zitat von LotPings:
Vielleicht wäre einfach eine kurze Wartezeit am Anfang eine Alternative - wenn die Anwendung danach nicht läuft endet
die Batch eben.

Jo, oder einen Counter in die erste Schleife einbauen.

Zitat von LotPings:
Gruß
LotPings

Grüße zurück
rubberman
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (14)

Frage von liquidbase zum Thema Windows Update ...