Dateipfad defekt

Startseite Foren Deutsches LiveCode-Forum Dateipfad defekt

Ansicht von 21 Antwort-Themen
  • Autor
    Beiträge
    • #27335
      Peter_M
      Teilnehmer

      Hallo zusammen,
      habe schon wieder ein großes Problem. Seit heute funktioniert der ’specialFolderPath(Documents“) &“/ ….“‚ nicht mehr und die darin gespeicherten Daten können nicht mehr aufgerufen werden. Vielmehr werden die Daten in einem Ordner, der auch den Stack enthält, abgespeichert. Weiß jemand Rat, woran das liegen kann und wie man es gegebenenfalls reparieren kan bereits alles mögliche probiert…..

      Peter

    • #27337
      Klaus Major
      Verwalter

      Hi Peter,

      das fehlende Anführungszeichen vor Documents ist wohl nur ein Schreibfehler, oder?
      -> specialFolderPath(Documents“) & „/ …“

      Desktop oder Mobile?
      Falls Mobile, dann bitte Kelinschreibung verwenden, da Android und iOS „case-sensitive“ sind
      -> specialfolderpath(„documents“)

      Falls mit einer Pfadangabe etwas nciht stimmt, speichert LC schon mal im -> defaultfolder, was bei Dir dann wohl der Ordner mit dem Stack ist.

      Was hast du denn genau geschreiben, was nicht (mehr) funktioniert?
      Bitte immer den Code mit posten, soweit möglich.

      Gruß

      Klaus

    • #27338
      Peter_M
      Teilnehmer

      Hallo Klaus,
      vielen Dank für deine Antwort. Eigentlich habe ich überhaupt nichts an der Dateistruktur oder den Pfaden geändert, die seit Monaten problemlos funktionierten. Es ist einfach so, dass der Pfad für LiveCode überhaupt nicht mehr zu existieren scheint. Zum Beweis habe ich mir folgende IF Bedingung programmiert:
      `if there is a file (specialFolderPath („documents“)&“/….“) then
      presets_laden
      end if‘
      Vor „presets_laden“ habe ich einen Breakpoint
      gesetzt, der nicht erreicht wird, obwohl Ordner und Dateien nach wie vor per Windows zugänglich sind….. 🙁
      Interessanterweise schreibt Windows selbst in der Dateistruktur unter Eigenschaften das Wort documents jetzt groß…..

    • #27339
      Torsten
      Teilnehmer

      Hi Peter,

      in deinem Code ist ein Leerzeichen zwischen „specialFolderPath“ und „(„, das könnte der Grund sein.

      LG
      Torsten

    • #27340
      Klaus Major
      Verwalter

      Daran sollte es nicht liegen, das hier klappt hervorragend:
      launch document (specialfolderpath ("documents"))
      ## 3 Leerzeichen!

    • #27343
      Klaus Major
      Verwalter

      Funktioniert so etwas denn in der message Box oder Button?
      answer (specialfolderpath("documents"))
      launch document (specialfolderpath("documents"))
      put files(specialfolderpath("documents"))

    • #27347
      Peter_M
      Teilnehmer

      Ist es möglich, dass ich LiveCode durch das Einbinden einer selbst erstellten GIF als Control zerschossen habe? Danach hatte sich LiveCode aufgehangen und musste per Taskmanager beendet werden….. Seitdem funktioniert der defaultFolderPath nicht mehr, sondern die Dateien werden aus dem Ordner, der den Programmystack enthält, eingelesen und dort wieder abgespeichert
      Vielleicht sollte ich LiveCode neu installieren ????

    • #27353
      Peter_M
      Teilnehmer

      Hallo Klaus und Torsten,
      ich muss mir tatsächlich LiveCode irgendwie zerschossen haben, als ich eine selbstgebaute gif Datei in meinem Code implementiert habe. Ich habe einen alten Stack aufgerufen und konnte LiveCode nach kurzer Zeit nicht mehr beenden. Im Taskmanager habe ich dann gesehen, dass LiveCode zweimal geöffnet war, was offensichtlich der Grund für die ganzen Probleme ist. Ich werde jetzt mal LiveCode komplett neu installieren und hoffe, dass dann wieder alles normal ist. Ich melde mich dann wieder, ob es geklappt hat.
      Vielen Dank noch einmal für eure Gedanken zu diesem Thema!.

      Gruß
      Peter

    • #27354
      Klaus Major
      Verwalter

      Oft reicht es auch, nur die Präferenzen von LC wegzuwerfen.
      Wo die liegen, kannst Du Dir von LC anzeigen lassen:
      put the filename of stack „revpreferences“

      Diese Datei dann löschen und LC neu starten, hilft meistens.

    • #27360
      Peter_M
      Teilnehmer

      Vielen Dank Klaus, das werde ich sofort ausprobieren.

    • #27361
      Klaus Major
      Verwalter

      Wichtig, erst LC beenden, dann die Datei löschen und LC wieder starten.
      Sonst legt LC sofort wieder eine (wahrschienlich fehlerhafte) Prefs-Datei an.

    • #27364
      Peter_M
      Teilnehmer

      Danke für den Hinweis Klaus. Ich habe die rev-Datei gelöscht und mir eine funktionierende Vorversion meines Stacks geladen und versuche jetzt,sie auf den neuesten Stand zu bringen. Ich habe eine Frage: ist es normal, dass LiveCode unter gewissen Umständen zweifach gestartet wird? Darf das sein? ich vermute, dass das die Ursache für manche Probleme wie das nicht beenden können von Livecode oder auch das nicht finden von Pfaden ist. Dieses Problem habe ich wie gesagt erst, seitdem ich eine gif-Datei als Control importiert habe. Allerdings kann ich zurzeit wieder trotz erneuter Implementierung dieser Datei normal am Stack programmieren und auch LiveCode wieder beenden. Aus welchem Grund aber LiveCode nachträglich unregelmäßig ein zweites Mal geöffnet wird, ist mir unerklärlich…..

    • #27368
      Klaus Major
      Verwalter

      Eigentlich sollte LC so programmiert sein, daß nur EINE Instanz geöffnet wird.
      Was da passiert sein könnte? Keine Ahnung…

      Du kannst aber auch Deine Runtimes so programmieren, daß sie auch nur EINMAL geöffnet werden können. Einfach diesen Dummy Handler ins Stack script und gut ist. 🙂

      on relaunch
        ## Nix tun in dem Fall
      end relaunch
    • #27373
      Peter_M
      Teilnehmer

      Probiere ich sofort! Das Problem taucht nämlich ständig nach einiger Zeit und des programmierens auf. Tausend Dank!

    • #27378
      Peter_M
      Teilnehmer

      Hallo Klaus, habe deinen Dummy-Handler ins Stack Script eingebaut. Ich habe dann während meiner Programmänderungen immer wieder mit dem Taskmanager kontrolliert, wie viele Instanzen von LiveCode geöffnet waren. Das ging eine gewisse Zeit gut, und dann waren es auf einmal ohne mir ersichtlichen Grund wieder 2 Instanzen, und schlussendlich hatte sich LiveCode Indy 9.6 wieder aufgehangen und konnte nur noch mit dem Taskmanager beendet werden. Der Dummy Händler hatte leider keinen Effekt! Ich bin ratlos… 🙁 Meine Vermutung bleibt, dass es einfach an der Implementierung der GIF-Datei liegen könnte, und ich weiß nicht, ob sich das durch eine Neuinstallation von LiveCode ändern würde….

    • #27385
      Peter_M
      Teilnehmer

      Hallo Klaus, ich muss mich dahingehend korrigieren, dass der Taskmanager mir nur anzeigt, dass Live Code ein zweites Fenster geöffnet hat (und nicht, das LiveCode ein zweites Mal gestartet wurde!), was aber nicht den unvermittelten Absturz des Programms markiert. Leider bleibt aber der Fehler aus mir rätselhaften Gründen. Ist denn livecode offiziell zur Anzeige von Gifs befähigt und zugelassen? Kann es zu einem stack overflow in Verbindung mit einem ebenfalls laufenden Timer kommen? Derzeit stimmen zumindestens die Dateipfade wieder ;_)

    • #27388
      Peter_M
      Teilnehmer

      …. Ich lese gerade, dass animierte Gifs nicht resized werden können. Also müsste zumindestens die Anzeige der Gifs offiziell im Rahmen von Livecode ohne Absturz möglich sein. Vielleicht habe ich ja meine gif
      -Anzeige unbewusster Weise resized??

    • #27391
      Klaus Major
      Verwalter

      Hallo Peter,

      Du hattest mich mißverstanden, ich schreib:

      Du kannst aber auch Deine Runtimes so programmieren, daß sie auch nur EINMAL geöffnet werden können.

      Der Trick mit -> „relaunch“ wirkt sich nur auf Deine STANDALONES aus, nicht aber auf LC selber!

      Ja, animierte Gifs funktionieren problemlos in LC.
      Wie auch immer, LC sollte nie abstürzen!

      Gruß

      Klaus

    • #27395
      Peter_M
      Teilnehmer

      Hallo Klaus, danke für den Hinweis, da hatte ich wohl nicht genau genug hingeschaut. Wenn ich das jetzt richtig verstehe, muss ich den relaunch-Dummy-Handler lediglich in meinen Splash-Stack einbinden um sicherzustellen, dass nur eine Instanz von LiveCode gestartet wird…

    • #27410
      Klaus Major
      Verwalter

      …muss ich den relaunch-Dummy-Handler lediglich in meinen Splash-Stack einbinden um sicherzustellen, dass nur eine Instanz von LiveCode gestartet wird…

      Nicht ganz, so muss es heissen:
      …um sicherzustellen, dass nur eine Instanz von MEINER RUNTIME gestartet wird!

      Ich denke, aber die Schotten haben das natürlich auch in Livecode selber so eingebaut.

    • #27419
      Peter_M
      Teilnehmer

      … und die Runtime ist dann nur der Splash Stack und nicht der nachgeladene Anwendungsstack / die nachgeladenen Anwendungstacks im .livecode- Format, oder? Ich hoffe, ich habe das jetzt richtig verstanden…

    • #27422
      Klaus Major
      Verwalter

      Was auch immer Du als STANDALONE speicherst!

Ansicht von 21 Antwort-Themen
  • Du musst angemeldet sein, um auf dieses Thema antworten zu können.