Ich bin noch am Überlegen, warum es mit der Array of String Methode nicht funktioniert hat, da es ja dynamisch erweitert werden kann, ich also an die n+1te stelle ein neues element erstellen kann.
Da DateiName durch die .add Methode ja problemlos erweitert werden kann, kann ich mir auch sicher sein, dass der Speicherplatz existiert.
Durch die Opftion OfFileMustExist im Opendialog kann ich mir auch sicher sein, dass die Pfade, die in DateiName erstellt werden, valide sind.
Die DateiÖffnen Prozedur hab ich von meiner Alten Prozedur abgewandelt,
Code: Alles auswählen
AssignFile(Datei, DateiName); //Damals noch ein einfacher string, da es ja auch nur einen Pfad gab.
Reset(Datei,)
Readln(Datei, Fragebogen); //Damals ja nur ein Fragebogen, da es ja auch nur eine Datei gab und ich kein Array von Fragebögen gebraucht habe;
//Diesen Teil habe ich so aus einem Beispiel genommen, desegen weiß ich auch nicht genau, was ioresult liefert.
if ioresult <> 0 then Showmessage('Error');
Closefile(Datei);
So sah das aus, bevor ich da drin "rumgefuscht" habe.
Wie ich auf die Idee kam, dass mein aktueller Code (Wie im vorherigen post gezeigt) funktioniert.
Mit AssingFile weise ich ja der Variable Datei den durch den Opendialog ermittelten Pfad zu.
Dann setze ich die Datei zurück und mache sie Lesbar und durch Readln Datei lese ich sie in den Fragebogen ein. Dies wollte ich jetzt auch iterativ mit der For-Schleife lösen, die von 0 bis zu Count -1 läuft, also für alle gewünschten Pfade durchgegangen wird. Ich weise nun also nichtehr nur einfach den String zu, sondern DateiName
, also das i-te Element in meiner TStringList. Diesen Pfad lese ich jetzt an die dazugehörige i-te Stelle in meinem FragenKatalog, der an jeder Stelle ja einen Fragebogen hat.
Ich sehe hier echt keinen Fehler, warum das einlesen der Datei auf diese Weise nicht klappen soll...