Systemverzeichnis der Runtime ermitteln (gesamte Struktur)

holgermaik

Well-known member
Beiträge
1.227
Punkte Reaktionen
278
Zuviel Werbung?
->Hier kostenlos registrieren
Hallo
ich suche eine Möglichkeit den kompletten Pfad des Systemordners der Runtime auszulesen. (Codesys 3.5)
Hintergrund:
im Systemordner erstelle ich Datenfiles (ähnlich Wiederherstellungspunkte von Variablen) die ich einem Benutzer zum Wiederherstellen aber auch zum Archivieren und zur Diagnose speichere. Aufgrund des Umfangs sind Archive leider nicht möglich. Die Ordnerstruktur ist leider bei verschiedenen SPS Herstellern unterschiedlich, so dass der Pfad dynamisch ermittelt werden muss.

Leider habe ich Schwierigkeiten den Systemordner in der kompletten Struktur festzustellen.
mit "SysDirGetCurrent" aus der SysDir Lib. kann der Systemordner festgestellt werden. - z.B. "PlcLogic/". Dies ist zum schreiben und lesen aus Codesys heraus ausreichend.
Der komplette Pfad wäre aber "/var/opt/codesys/PlcLogic". (bei dem Gerät zum Testen hier)
Um eine Auswahl der vorhandenen Dateien mit der CAA File Lib. dem Benutzer anzubieten ist der komplette Pfad notwendig.

Hat dazu jemand eine Idee?

Grüße
 

KLM

Well-known member
Beiträge
399
Punkte Reaktionen
87
Moin, ich bin nicht sicher, ob das bei allen Herstellern geht, aber Du könnest den symbolischen Namen HOME:// verwenden
 
OP
holgermaik

holgermaik

Well-known member
Beiträge
1.227
Punkte Reaktionen
278
Zuviel Werbung?
->Hier kostenlos registrieren
Du könnest den symbolischen Namen HOME:// verwenden
Hallo
Habe ich probiert. Ein symbolischer Name kann durch die CAA File Lib. leider nicht aufgelöst werden.
Habe mich jetzt für 2 Möglichkeiten entschieden.
der normale Benutzer bekommt das Systemverzeichnis wo die Daten abgelegt werden angeboten und als 2. Möglichkeit wird "root" angeboten. In dem Fall muss man sich halt durch die Struktur klicken.
 

KLM

Well-known member
Beiträge
399
Punkte Reaktionen
87
Die Auflösung erfolgt vermutlich nicht in der Bibliothek im Sinne einer IEC Applikation, sondern ruft Funktionen des Betriebssystems auf. Das heißt, dass es Hersteller gibt, die den Symbolnamen nicht unterstützen. Vlt. findest Du eine Lösung um den Hersteller auszulesen und abhängig davon das Home Verzeichnis statisch zu definieren.
 
Oben