Probleme mit Codesys FileUtilities

vobi123
2020-09-17
2020-09-22
  • vobi123

    vobi123 - 2020-09-17

    Ich möchte mithilfe der Codesys Librarys CAA File und SysDir/SysFile Dateien bearbeiten. Ich bin im Codesys-Store auf das FileUtilities-Projekt aufmerksam geworden. Ich möchte eigentlich ein Ordner-Verzeichnis Öffnen und die Einträge durchgehen und eine bestimmte Datei mit bestimmten Namen suchen. Also bin ich auf die CAA-File Bibliothek speziell auf die Directory-Funktionen aufmerksam geworden. Allerdings funktionieren dort keine Funktionen. Immer wenn ich dort beim File.DirCreate-Funktionsbaustein das xExecute auf True setze, bleibt für immer der Parameter xBusy gesetzt. xDone oder xError bleiben stets auf False. Ich habe mein Projekt und den Code-Ausschnitt angehängt wo der Fehler auftritt. Ich komme bei diesem Schritt nicht mehr weiter, da xDone oder xError nie gesetzt werden. Nur das xBusy-Flag bleibt aktiv. Vielleicht liegt es daran, dass die Funktionen der Bibliothek asynchron ausgeführt werden, aber was muss ich machen, dass die Funktion mal ausgeführt wird?

    Hat jemand Erfahrung mit der CAA File Bibliothek und kann mir bei diesem Fehler weiterhelfen?

     

    Last edit: vobi123 2020-09-17
  • dkugler

    dkugler - 2020-09-17

    das Projekt war ja noch für Codesys V3.5 SP6
    Habe das Projekt mal auf aktuellen Stand gebracht,
    Fehler entfernt durch ergänzen von : ACCESS_MODE.AM_APPEND_PLUS

    Bei mir funktioniert jetzt alles.

     
  • dkugler

    dkugler - 2020-09-17

    das Projekt war ja noch für Codesys V3.5 SP6
    Habe das Projekt mal auf aktuellen Stand gebracht,
    Fehler entfernt durch ergänzen von : ACCESS_MODE.AM_APPEND_PLUS

    Bei mir funktioniert jetzt alles.

     
  • vobi123

    vobi123 - 2020-09-21

    Ich habe dein Projekt heruntergeladen und ausprobiert und bei mir funktioniert das Run CAADir Example und das Run CAAFile Example gar nicht, da er bei der FileOpen-Methode das xError-Bit setzt. Lese ich den Error-Code aus kommt ASM_CREATEJOB_FAILED. Keine Ahnung was das bedeuten soll und wie ich das beheben kann. Einzig Run SystemFile Example funktioniert bei mir. Führe ich das Run SystemDir Example aus hängt er beim durchiterieren der Ordnereinträge fest, da er unendlich viele Einträge findet und die REPAT-Schleife somit nie endet.

     

    Last edit: vobi123 2020-09-21
  • dkugler

    dkugler - 2020-09-22

    Als Hilfestellung: Du könntest Dir nochmal Gedanken zu Deinem eingestellten base directory und dessen Zugriffsberechtigungen abhängig vom Betriebssystem machen. Die Auswirkungen hast Du ja selber schon entdeckt.

     
  • vobi123

    vobi123 - 2020-09-22

    Kann ich mir kaum vorstellen, dass es daran liegt, da das Run SystemDir Example funktioniert und auf das C-Laufwerk schreiben darf. Die Ordner und Textdateien wurden nämlich angelegt. Das sehe ich ja.

     

    Last edit: vobi123 2020-09-22

Log in to post a comment.