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

Bat2Exe - Batch-Datei enthält Schleife und der Exe-Task darf nicht als CMD-Task im Taskmanager auftauchen

Frage Microsoft Windows Tools

Mitglied: blacksun

blacksun (Level 1) - Jetzt verbinden

20.06.2007, aktualisiert 13:09 Uhr, 7212 Aufrufe, 5 Kommentare

Hallo,

ich bin auf der Suche nach einem Converter, der mir aus einer Batch-Datei einen Exe-Datei macht.
Ich habe zwar diesen Beitrag hier gefunden:

http://www.administrator.de/bat2exe.html

Aber die sehr alte Version hier http://www.computerhope.com/dutil.htm kann nicht mit einer Schleife in Form von Sprungmarken umgehen, die neuere Version gibt's scheinbar nirgends mehr

Ich habe folgende Test-Batch:

01.
@echo off 
02.
 
03.
set errorlevel=1 
04.
 
05.
:start 
06.
dir test.*|find /I "test.pnp" 
07.
IF errorlevel==1 (goto 2) ELSE goto File1 
08.
 
09.
:File1 
10.
echo "File 1 gefunden!!!" 
11.
goto end 
12.
 
13.
:2 
14.
dir hanstest.*|find /I "hanstest.png" 
15.
IF errorlevel==1 (goto start) ELSE goto File2 
16.
 
17.
:File2 
18.
echo "File 2 gefunden" 
19.
goto end 
20.
 
21.
:end 
22.
exit

Der Converter sollte dabei folgende Eigenschaften haben:

- er sollte mit der oben genannten Form der Schleife umgehen können

- die erzeugte Exe sollte im Taskmanager als eigener Task auftauchen, z.B. in Form von test.exe, und nicht wie bei einer mit dem oben verlinkten alten Bat2Exe als cmd im Taskmanager auftauchen. Grund: Die Exe sollte man eindeutig identifiziere können, so dass man sie mit einem Taskkill auch beenden kann. Ein Taskkill auf cmd.exe beendet alle Batch-File, die dann noch aktiv sind

- schön, aber nicht unbedingt notwendig, wäre wenn man auch Sprungmarken verwenden kann, die länger als 8 Zeichen sind. Das ganze braucht nur in einer Windows Umgebung zu laufen.

Viele Grüße
Martin
Mitglied: bastla
20.06.2007 um 11:33 Uhr
Hallo blacksun!

Zumindest zum Thema "taskkill" könnte ich einen Vorschlag machen: Benenne einfach das CMD-Fenster mit einem eindeutigen Fenstertitel, etwa
01.
title Batch0816
Danach kannst Du (aus einem anderen CMD-Fenster) mit
01.
taskkill /FI "WINDOWTITLE eq Batch0816" >nul
die richtige CMD-Instanz eliminieren.

Grüße
bastla
Bitte warten ..
Mitglied: onegasee59
20.06.2007 um 12:08 Uhr
Hallo,
"Bat 2 EXE" kann es (kostet aber) http://www.cadkas.de/downgertools21.php
Kannst ja erstmal testen.

gruß
Bitte warten ..
Mitglied: blacksun
20.06.2007 um 12:23 Uhr
Hallo,
"Bat 2 EXE" kann es (kostet aber)
http://www.cadkas.de/downgertools21.php
Kannst ja erstmal testen.

gruß


Hallo onegasee59,

dieses Tool hab ich auch gefunden und getestet. Hat aber leider den Nachteil, dass wenn ich per Taskkill die Exe beende, dass die CMDs, die im Rahmen der exe gestartet wurden, noch weiterlaufen. Es müssten alle Befehle (find, dir, goto, usw) im Kontext der exe-Datei laufen, so dass diese auch sofort beendet werden, wenn die exe "abgeschossen" wird.

Aber mir geht's es nur darum, das CMD eindeutig identifizieren zu können, so dass ich genau dieses eine CMD beenden kann, ohne weitere cmds zu beenden. Von daher hört sich der Vorschlag von bastla sehr vielversprechend an.


@euch beide
Hättet ihr mir auch ne Idee, wie ich es mit einer Batch hinbekommen könnte, dass diese garantiert nur einmal gestartet ist.

Sprich wenn die Batch 0816 schon läuft, dass diese dann nicht nochmal ausgeführt wird.

Ich möchte einfach vermeiden, dass wenn das ganze unbeaufsichtigt läuft, dass dann die Batch in der Form, wie ich sie oben als Beispiel-CMD gepostet habe, dass diese zig mal läuft und das ganze dann an die Wand fährt.

Viele Grüße
Martin
Bitte warten ..
Mitglied: bastla
20.06.2007 um 12:52 Uhr
Hallo blacksun!

Könnte nach dem selben Prinzip wie oben funktionieren, etwa
01.
@echo off & setlocal 
02.
tasklist /FI "WINDOWTITLE eq Batch0816" 2>nul | findstr /i "cmd.exe">nul && exit 
03.
title Batch0816 
04.
pause
Solange dieser Batch läuft, solltest Du die gleiche Batchdatei nicht nochmals starten können (oder jedenfalls nur für sehr kurze Zeit ).

Grüße
bastla
Bitte warten ..
Mitglied: onegasee59
20.06.2007 um 13:09 Uhr
Hallo,
...den Nachteil, dass wenn ich per Taskkill die Exe beende, dass die CMDs, die im Rahmen der exe gestartet wurden, noch weiterlaufen.
Gib mir mal den taskill-Befehl genau den Du benutzt hast und welche der beiden Optionen hast Du zum Erstellen der EXE benutzt?

gruß
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (32)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...

Windows Netzwerk
Windows 10 RDP geht nicht (18)

Frage von Fiasko zum Thema Windows Netzwerk ...