Batch file soll in .dll file Schreiben?

3 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Wenn, dann sollte es so funktionieren:

set /p input=EINGABE:
echo %input% > file.dll

Allerings hast du dann nicht weiter als eine gewöhnliche Textdatei mit dem Namen file.dll. Falls du eine DLL im Sinne von "Dynamically Linked Library" haben willst, bringt dir das allerdings gar nichts.


SEBuilds 
Fragesteller
 04.04.2019, 17:16

Danke es hat Funktioniert! Früher ging es, aber es stand immer nur Echo Ist Ausgeschaltet (OFF) darin

0
Erzesel  04.04.2019, 17:43

Soweit richtig...allerdings darf der Nutzer nicht auf die Idee kommen Steuerzeichen wie <>&*%!()| einzugehen. Das würde die Batch, in Deiner angewandten Form der Syntax, zum Absturz bringen.

Set ohne Gänsefüßchen ist zwar zulässig, jedoch werden obige Zeichen nach ihrer Funktion interpretiert.

Sicher ist:

Set /p "myvar=mach eine Eingabe : "

Noch kritischer verhält sich echo.

Die "ungeschützte" Ausgabe eines String mit obigen Zeichen kann sehr seltsame Reaktionen auslösen.

set "myvar=Hans & Gretel"

Ist Ok. ...aber

echo %myvar% > "mein Text.txt"

...gibt Hans aus und versucht das Programm Gretel zu starten, welches seine Ausgabe in die Datei "mein Text.txt" schreiben soll... das ist nicht das was wir uns vorgestellt haben.

echo  "%myvar%" > "mein Text.txt"

...schreibt "Hans & Gretel" in genannte Datei. Allerdings muss man dann beim einlesen die Gänsefüße entfernen for /f ...do (... %%~a ...) .

Batch kann schon verrückt sein...🥵

Am besten bei Sachen mit nicht vorhersehbaren Input Gänsefüße verwenden.

...und wenn man die immer verwendet gewöhnt man sich dran und macht alles richtig.

3

.dll Dateien sind keine Textdateien. Da also einfach etwas reinzuschreiben macht die unbrauchbar.

Woher ich das weiß:eigene Erfahrung – Ich habe selber lange im PC gearbeitet

SEBuilds 
Fragesteller
 04.04.2019, 17:13

Doch. Wenn man sie mit dem Editor öffnet

0

...auch wenn man planlos mit einem (Hex)Editor in einer .dll herumschreibst, dürfte sie unbrauchbar werden. (Es ist völlig irrelevant womit man eine Dll killt echo oder Editor)

Dll-dateien enthalten ausführbaren Byte- oder Maschinencode. Ohne Kenntnisse der Binärcodes die den Prozessor steuern ist es unmöglich etwas Sinnvolles in eine Dll zu schreiben.

Ich weiß nicht wo du gesehen haben willst, das eine Batch in eine Dll geschrieben haben könnte...

Bestenfalls vielleicht in einem Scifi-Film oder bei einem YouTube-Trottel.

Der einzige Grund in eine Dll zu schreiben wäre :

echo Peng...Windows, du bist tot > "C:\Windows\System32\kernel32.dll"

...so einfach ist es zum Glück nicht, aber mit etwas Übung bekommt man Windows auf ähnliche Art ermordet...

Damit wäre ich auch wieder bei Deiner Frage warum das Schreiben in eine Dll nicht funktioniert.

Um in eine Systemrelevante Dll zu schreiben benötigt man die entsprechenden Rechte... Außerdem sind wichtige Dlls "loocked", also als von einem anderen Prozess verwendet, markiert. In solche Dateien kann man ohnehin nicht schreiben.

Ich bin zwar kein Hellseher, aber derartig Fragen, die nur hinsichtlich Sabotage einen Sinn ergeben, lassen mich aufmerken.

Vergiss solche Bösartigkeiten, es reicht wohl nicht mehr mit dem shutdown herumzualbern...? Sowas kann als Sachbeschädigung bestraft werden.

Woher ich das weiß:eigene Erfahrung – Ich mach das seit 30 Jahren