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

bat2com Probleme

Frage Entwicklung Batch & Shell

Mitglied: 46591

46591 (Level 1)

12.04.2007, aktualisiert 02.05.2007, 4445 Aufrufe, 9 Kommentare

Finde den Fehler nicht !

Hallo !

Die nachfolgenden 3 Zeilen machen Probleme, wenn ich sie mit BAT2COM bzw. auch BAT2EXE compliere.
Bei compalieren ist immer der Fehler, wenn ein Prozentzeichen (%) vorhanden ist.


for /F "delims=" %%A in ('dir /s /b C:\garten2007.exe') do set dest="%%~dpA"
copy setup.exe %dest%\setup2.exe
pushd %dest%


Gibt es für diese drei Schritte eine andere Möglichkeit? Habe seit gestern nach eine Lösung gesucht, aber ERFOLGLOS.

Vielen Dank für eventuelle Lösungen und ab morgen ein schönes SONNIGES Wochenende.

Gruß Kif
Mitglied: Biber
14.04.2007 um 15:49 Uhr
Moin clipclip,

das glaube ich nicht, dass die Prozentzeichen die Probleme machen.
Ich tippe eher darauf, dass diese so genannten "Batch-Kompiler" zwar su heißen, aber natürlch gar nichts kompilieren, sondern schlicht und einfach den in der Original-Batch stehenden Code Zeile für Zeile und Zeichen für Zeichen an den Command-Interpreter senden.
Die Bat2Exe macht es jedenfalls so, dass bei Aufruf der .exe temporär eine bf[nnnn].bat im %Temo%-Verzeichnis angelegt wird, die dann ganz normal vom CMD-Interpreter abgearbeitet wird.

Somit kann ich mir vorstellen, dass es Pfadprobleme geben könnte, z.B. dass die heruntergeladene Setup-exe (wird ohne Zielpfad gesaugt) sich gar nicht in dem Verzeichnis der .bat befindet und entsprechend auch nicht kopiert werden kann.

Spricht denn etwas dagegen, mal ein paar ECHOs einzubauen, die Z.B. den aktuellen Pfad %cd% ausgeben vor, nach jedem Schritt?

Gruss
Biber
Bitte warten ..
Mitglied: 46591
14.04.2007 um 16:07 Uhr
Hallo Biber.

Habe das ganze nochmals auf einem Test-PC durchlaufen lassen und folgendes brav mitgeschrieben. Den Batch starte ich aus c:\download\meine\start.bat

Ich habe jetzt vor jedem und nach jedem Batch-Aufruf geschrieben, wo er gerade ist (%cd%)

c:\download\meine\start.bat
for /F "delims=" %%A in ('dir /s /b C:\garten2007.exe') do set dest="%%~dpA"
c:\download\meine\start.bat

c:\download\meine\start.bat
copy setup.exe %dest%\setup2.exe
c:\download\meine\start.bat

c:\download\meine\start.bat
pushd %dest%
c:\ordner1\


und da er jetzt in Ordner1 ist, wo das setup2.exe hinkopiert wurde udn sich dort ja auch die garten2007.exe befindet, meine ich stimmen es ja. Aber dennoch glaube ich Dir gerne, das es an dem BAT2COM / BAT2EXE leigt. Aber ich habe mehr Batch-Kompiler ausprobiert, als Finger an der Hand.

Ich weiß nicht ob das weiter hilft, würde mich aber sehr freuen.

Gruß Kif.
Bitte warten ..
Mitglied: miniversum
14.04.2007 um 16:48 Uhr
Bekommst Du den eine Konkretere Fehlermeldung?
Hast Du mal versucht das ganze selbst in C nachzuprogrammieren, bzw. über den Shell-Befehl und die Batch Befehle selbst die Funktionalität des Bat2exe compilers nachzubilden?
Dort könntest du dann einige aufrufe auch anders gestalten dann, was vielleicht besser funktionieren könnte.

miniversum
Bitte warten ..
Mitglied: 46591
14.04.2007 um 16:55 Uhr
Moin Miniversum.

Bekommst Du den eine Konkretere
Fehlermeldung?

NEIN !!!


Hast Du mal versucht das ganze selbst in C
nachzuprogrammieren, bzw. über den
Shell-Befehl und die Batch Befehle selbst die
Funktionalität des Bat2exe compilers
nachzubilden?
C? Als Batch-Datei geht es einwandfrei, nur soll es so laufen, das später keiner die komplette Batch verändern kann.
Bitte warten ..
Mitglied: miniversum
14.04.2007 um 17:51 Uhr
Ja schon klar.
Versuchs mal mit nem C compiler wie z.b. dev C++.
In C kannst du batch Befehle direkt einbauen z.B. so:
system("echo %cd%");
system("PAUSE");
Das ganze kannst Du dann compilieren und eine exe daraus erzeugen.
Auf diese art kansnt du auch einzelne Zeilen später abändern und teilweise C- Code verwenden.
Auf diese art hast du die Funktion dieser bat2exe compiler nachgebildet udn aknnst an kritischen oder falsch übernommenen Stellen nacharbeiten.

miniversum
Bitte warten ..
Mitglied: 46591
14.04.2007 um 23:57 Uhr
Hallo miniversum.

Erst einmal Danke für Deine Hilfsbereitschaft !!!

Habe es mit:

system("echo %cd%");
system("PAUSE");
for /F "delims=" %%A in ('dir /s /b C:\garten2007.exe') do set dest="%%~dpA"
system("echo %cd%");
system("PAUSE");
copy setup.exe %dest%\setup2.exe
system("echo %cd%");
system("PAUSE");
pushd %dest%
system("echo %cd%");
system("PAUSE");

ausprobiert und da gibt er mir sofort raus, das compalieren nicht möglich, da Fehler bereits in Zeile 1. Nehme ich Zeile 1 weg, auch compalieren nicht möglich, usw.

Gruß Kif
Bitte warten ..
Mitglied: 46591
02.05.2007 um 03:18 Uhr
Problem gelößt.

Fehler war, das dieser Batch nicht zur Exe-Datei zu compalieren ist.

Gruß Kif
Bitte warten ..
Mitglied: Biber
02.05.2007 um 07:30 Uhr
Moin, clipclip/Kif,

Rückfrage: Fehler gefunden und Fehler behoben?
Oder ist das Problem gelöst, weil die Antwort lautet "Kompilieren geht halt nicht"?

Hast Du jetzt Dein ursprüngliche Ansinnen umsetzen können?

Gruß
Biber
Bitte warten ..
Mitglied: 46591
02.05.2007 um 16:00 Uhr
Ja. habe es umsetzen können, aber leider nicht mit Batch-Programming.

Gruß Kif.
Bitte warten ..
Ähnliche Inhalte
RedHat, CentOS, Fedora
Probleme mit Updates - massenhaft Konflikte (3)

Frage von harald.schmidt zum Thema RedHat, CentOS, Fedora ...

Cloud-Dienste
Probleme mit GoogleMail (Trello und Teambay)

Frage von PatrickKipp84 zum Thema Cloud-Dienste ...

Windows Server
Yoursecurecloud.de Probleme mit Pfaden (6)

Frage von WPFORGE zum Thema Windows Server ...

Neue Wissensbeiträge
RedHat, CentOS, Fedora

Fedora, RedHat, Centos: DNS-Search Domain setzen

(13)

Tipp von Frank zum Thema RedHat, CentOS, Fedora ...

Drucker und Scanner

Samsung SL-M4025ND, firmware update und (kompatible) Tonerkassetten

(1)

Erfahrungsbericht von markus-1969 zum Thema Drucker und Scanner ...

Heiß diskutierte Inhalte
Batch & Shell
Skripterstellung Lehrling (22)

Frage von 133119 zum Thema Batch & Shell ...

Windows Userverwaltung
gelöst Wie verfahrt Ihr mit den Windows-Benutzerkonten und -dateien von ausgeschiedenen Mitarbeitern? (14)

Frage von Bl0ckS1z3 zum Thema Windows Userverwaltung ...

Exchange Server
Microsoft Exchange Weiterleitung mit anderer primären E-Mail Adresse (14)

Frage von Rene12345 zum Thema Exchange Server ...

LAN, WAN, Wireless
Devolo DLAN 500 pro Wireless+ (13)

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