Erstelle dir eine TStringlist und fülle sie mit deinen Zeilen. Mit
Stringlist.SaveToFile('C:\ruhezustand.bat');
Kannst du sie dann als .bat-Datei speichern (ist ja nichts anderes als ne Text-Datei).
Probiers mal aus!
Edit: Als Nachtrag, damits verständlicher wird:
Delphi-Quellcode:
procedure baterstellen(pfad : string);
var bat : TStringlist;
begin
bat := TStringlist.Create;
try
bat.Add('... 1.Zeile'); // mit den Zeilen füllen
bat.Add('... 2.Zeile');
//...
bat.SaveToFile(pfad);
finally
bat.free;
end;
end;
(ungetestet, sollte aber funktionieren)