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
        Administrator

          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
              Administrator

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

              • #27343
                Klaus Major
                Administrator

                  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
                      Administrator

                        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
                          Administrator

                            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
                              Administrator

                                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
                                        Administrator

                                          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
                                            Administrator

                                              …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
                                                Administrator

                                                  Was auch immer Du als STANDALONE speicherst!

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