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
GELÖST

Per batch abfragen ob ein prozess läuft und erst weitermachen, wenn dieser beendet ist

Frage Entwicklung C und C++

Mitglied: ChrisDynamite

ChrisDynamite (Level 2) - Jetzt verbinden

01.08.2013 um 12:00 Uhr, 2387 Aufrufe, 3 Kommentare

Hallo

ich möchte eine Batch Datei erstellen, in welcher eine installationsroutine läuft und danach eine zweite starten soll. wie kann ich regeln, dass erst die setup2.exe startet, nachdem lt. taskmanager die setup1.exe beendet wurde?

grüße

Chris

call und wait bringen keinen effekt
Mitglied: DerWoWusste
01.08.2013 um 12:46 Uhr
Hi.

Einfach in der Batch hintereinanderschreiben, dann geschieht doch genau das.
Bitte warten ..
Mitglied: clSchak
01.08.2013, aktualisiert um 13:37 Uhr
Hi

nein @DerWoWusste das funktioniert nicht immer, z.B. wenn man Teamviewer installiert und danach die Config in die REG schreiben will muss Teamviewer definitiv aus sein, auch der Dienst, sonst nimmt der das nicht an.

01.
@echo off 
02.
ping 127.0.0.1 -n 1 -w 3000 > nul 
03.
taskkill /f Prozessname 
04.
ping 127.0.0.1 -n 1 -w 3000 > nul 
05.
net stop servicename 
06.
ping 127.0.0.1 -n 1 -w 3000 > nul 
07.
nächster Programmaufruf
Warum die Pings? Damit eine kurze Wartezeit ausgeführt wird, damit der Prozess wirklich beendet ist, das braucht immer ein bischen Zeit bis der den Prozess richtig gekillt hat.

Wir haben das so gelöst, damit wir Teamviewer sauber installieren können (wir haben leider keine Coorp. Lizenz wo man das MSI File bekommt und müssen über die "Standard" EXE installieren.

Ähnliche Probleme bekommt man mit Installern, die mitten in der Installation das "Programm" wechseln, wenn z.B. über eine Setup.exe die Installation gestartet wird und mitten drin diverse MSI aufgerufen werden und die Setup.exe schon längst beendet ist - aber die Installation noch garnicht abgeschlossen wurde.

Edit Add:
Ansonsten, kannst die Tasklist auch abfragen:
01.
tasklist /FI "IMAGENAME eq myapp.exe" 2>NUL | find /I /N "myapp.exe">NUL 
02.
if "%ERRORLEVEL%"=="0" echo Programm is running
gefunden @ http://stackoverflow.com/questions/162291/how-to-check-if-a-process-is- ...
Bitte warten ..
Mitglied: ChrisDynamite
04.08.2013 um 12:08 Uhr
danke für eure hilfe: folgende erkenntnisse habe zumindest ich anwenden können:

per CALL befehl VOR eine exe bsp: (\\servername\freigabename\verzweigung\ausführen.exe) warten die jeweiligen setups wirklich aufeinander. ABER seit vorsichtig denn:

ich hatte die Unschönheit, dass eine exe andere *.exe oder gar eine msi geöffnet hat. was passiert also: setup.exe startet und startet sofort die *.msi. danach schließt sich die exe und der prozess geht sofort weiter. wenn man dann eine bedingung erstellen möchte, dass bsp eine dateiversion abgeprüft wird und dann ein zweites programm installiert werden soll, funktioniert das scirpt nicht, denn die 1. installation ist nicht einmal fertig, so dass entsprechende ordner und ausführbare dateien erstellt wurden und die nächste steht schon in den startlöchern.

ABHILFE: sucht die letztendliche exe oder msi auf die verwiesen wird und staret diese mit silent parametern und mit dem CALL befehl vor der exe.
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Batch & Shell
gelöst Batch erst starten wenn bestimmte Datei vorhanden ist (7)

Frage von pdiddo zum Thema Batch & Shell ...

Batch & Shell
Batch Skript läuft merkwürdig. (15)

Frage von pixel0815 zum Thema Batch & Shell ...

Batch & Shell
Dateinamen nach Zeichnen abschneiden - Batch-Shell (9)

Frage von cberndt zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Router & Routing
gelöst Ipv4 mieten (22)

Frage von homermg zum Thema Router & Routing ...

Exchange Server
gelöst Exchange 2010 Berechtigungen wiederherstellen (20)

Frage von semperf1delis zum Thema Exchange Server ...

Windows Server
DHCP Server switchen (20)

Frage von M.Marz zum Thema Windows Server ...

Hardware
gelöst Negative Erfahrungen LAN-Karten (19)

Frage von MegaGiga zum Thema Hardware ...