Hallo Darkkulli,
ich selbst verwende zum schreiben in eine Datei immer den Befehl Print und nicht write. Der Unterschied besteht darin
Im Gegensatz zur Print #-Anweisung fügt die Write #-Anweisung beim Schreiben in die Datei Kommas zwischen Elementen und Anführungszeichen eingeschlossener Zeichenfolgen ein. Sie brauchen daher in der Liste kein explizites Trennzeichen anzugeben. Die Write #
-Anweisung fügt einen Zeilenumbruchzeichen, d.h. eine Kombination aus Wagenrücklauf und Zeilenvorschub (Chr(13) + Chr(10)), ein, nachdem sie das letzte Zeichen aus der Ausgabeliste in die Datei geschrieben hat.
Wie du nun siehst, eignet sich diese Variante nicht um eine Batch Datei zu erstellen, dann die Daten evtl in der Form vorliegen könnten.
„Echo off“
„cd xyz“
schreibst du die Daten dagegen mit der Print Anweisung, so würde es so ausschauen
Echo off
cd xyz
Wenn du die Datei öffnest so kannst du hintereinander weg die daten schreiben. Sie werden jedesmal an das Ende der Datei gehaengt. Wenn du nun aber die Datei schliesst und sie erneut öffnest mit Output, so wird diese neu erstellt. Willst du Daten anhaengen, so nutze mal die Variante 
public sub WriteFile(Byval sFile as string, vData as string)
on error resume next
dim fNr as byte
fNr=freefile
open sFile for Append as #fNr
print #fNr,vData
close #fNr
end sub
Ein Aufruf könnte dann wiefolgt aussehen
call WriteFile(„c:\Test.bat“,„Echo off“)
call WriteFile („c:\Test.bat“,„cd xyz“)
Möchtest du daten aus dem File lesen so nutze die
Line Input Anweisung
–> Line Input #fNr, vData
Die Daten würden nun in der Variablen vData stehen 
Sofern du vorher die Variable fNr belegt hast und die Datei im Input Modus geöffnet hast.
Daten in eine Variable kannst du wiefolgt schreiben
Variablenname = Daten
Bsp
Dim a as string 'Zeichenfolge
dim b as Integer 'Zahl vom Typ Integer
a=„Hallo Welt“
b=1243
Ich hoffe ich konnte dir das alles ein wenig naeher bringen:smile:
MfG Alex
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]