CX_FILE_SOURCE_RANGE::File
Beschreibung:
Diese MA-Funktion liefert Lese-/Schreibzugriff auf den Dateipfad des Quellcode-Bereichs.
Bei Setzen des Dateipfads wird die Umgebungsvariable CX_ROOTDIR im Dateipfad unterstützt. Grundsätzlich gelten hier für die Pfadauflösung die gleichen Regeln, wie für die Auflösung von inkludierten Quelldateien:
- Falls kein absoluter Pfad übergeben wird, wird in den Verzeichnissen aus CX_PATH nach der Datei gesucht.
- Falls sie darin nicht gefunden wurde und der Dateinamen mit ".cxp" endet, dann wird "CX_ROOTDIR\\projects\\" vorangestellt.
- Ansonsten wird der Dateiname relativ zum aktuellen Arbeitsverzeichnis des ClassiX-Prozesses aufgelöst.
Der aufgelöste Dateipfad kann anschließend wieder aus dem Objekt ausgelesen werden.
Beim Setzen des Dateipfads, wird der Quellcode-Bereich implizit auf (0:0) - (MAX:MAX) gesetzt, sodass der Quellcodebereich durch das setzen des Dateinamens gültig wird und direkt verwendet werden kann, um die gesamte Datei zu lesen oder zu überschreiben.
Code-Beispiel:
// Read evalute.cxp file
Var(range)
CreateTransObject(CX_FILE_SOURCE_RANGE) -> range
"evaluate.cxp" range Put(File())
range Copy(File()) // "Y:\\classix\\Evaluate\\projects\\evaluate.cxp"
range Call(Read) // "..."
Var(range)
CreateTransObject(CX_FILE_SOURCE_RANGE) -> range
"evaluate.cxp" range Put(File())
range Copy(File()) // "Y:\\classix\\Evaluate\\projects\\evaluate.cxp"
range Call(Read) // "..."
Stack | Position | Objekttyp | Kurzbeschreibung |
---|---|---|---|
Stack(In) | Top | CX_FILE_SOURCE_RANGE | Der Codebereich |
Stack(In/Out) | STRING | Der Dateipfad |