Sind in der originalen Datei auch schon "sinnvolle" Zeilenumbrüche drin, insbesondere nach jedem Semikolon (= Befehlstrenner), oder ist das nur ein langer String ohne solche Steuerzeichen?
Im ersten Fall würde ich die Datei in eine temporäre Stringlist laden. Danach diese Zeile für Zeile durchgehen und dabei die eigentliche Zielliste aufbauen.
- Wenn einzeiliger Kommentar: Aktuelle Zeile in Zielliste einfügen
- Beginn eines mehrzeiligen Kommentars: Wechsel in "Kommentarmodus" und Zeile in Zielliste einfügen
- Im Kommentarmodus: Zeile in Zielliste einfügen, checken auf Kommentar-Ende, ggf. Kommentarmodus verlassen
- Im Nicht-Kommentarmodus: Zeile an einen temporären String anhängen (ohne Zeilenumbruch). Test auf ";" am Ende, ggf. temporären String in Zielliste einfügen.
Evtl. kann man auch was mit myList.DelimitedText; und ";" als Delimiter machen, aber dann würden Kommentare vermutlich falsch behandelt.
Edit: Ist das richtig, dass in den Aufzählungen (oder: Parameter-Listen) wahlweise ein Komma oder ein Zeilenumbruch gültig ist? Die Kommata müsstest du dann ja ggf. einfügen, wenn du einen mehrzeiligen Befehl in eine Zeile schreibst ...
The angels have the phone box.