Datei im eigenen Programm mit dem Windows Explorer öffnen

Startseite Foren Deutsches LiveCode-Forum Datei im eigenen Programm mit dem Windows Explorer öffnen

Schlagwörter: , , ,

Ansicht von 7 Antwort-Themen
  • Autor
    Beiträge
    • #13323
      xamsoftware
      Teilnehmer

      Hallo zusammen,
      unter Windows kennt man ja folgendes: Wenn man sich im Explorer befindet, kann man ja Dateien per Rechtsklick anklicken und anschließend auf Oeffnen mit… gehen. Jetzt meine Frage: Wie kann ich es bewältigen, dass wenn ich z.B. eine Bildbetrachter App programmiert habe, ich im Windows Explorer auf Oeffnen mit.. gehe und anschließend meine App auswähle, dass die Datei dann in meiner App z.B. bei einem Bild in einem Grafikobjekt angezeigt wird?
      Ich hoffe, da kann mir wer weiterhelfen.
      Vielen Dank schon mal im Vorraus,
      Gruß,
      Max

    • #13325
      Klaus Major
      Verwalter

      Hi Max,

      ich bin Mac-User, habe aber mal auf der englischen LC-Mailingliste nachgefragt.
      Melde mich, sobald dort etwas Erhellendes gepostet wurde.

      Gruß

      Klaus

    • #13333
      xamsoftware
      Teilnehmer

      Hi Klaus,
      Danke!

      Gruß,

      Max

    • #13341
      Klaus Major
      Verwalter

      Hi Max,

      leider war die Reaktion auf der englischen Liste eher mau, es hat nur einer eine etwas kärgliche und nciht sonderlich befriedigende Antwort gegeben.

      Unbedingt nachlesen im Dictionary: „$“ (Dollar = erster Eintrag) und „relaunch“!

      Vorweg, wie deine App später in diese Explorer Liste reinkommt, überlasse ich mal Dir…

      Offensichtlich müssen wir hier zwei Szenarien unterscheiden und unterschiedlich darauf reagieren.

      1. Deine EXE ist noch nicht geöffnet
      In dem Fall musst Du einen „startup“ Handler im Stackskript erstellen, der die gelieferten Parameter auswertet und darauf reagiert.

      Es werden zwei (oder gar mehr) Parameter (Umgebungsvariablen) mitgeliefert:

      on startup
        ## Diese Message bekommt LC als allererstes, noch weit vor "pre-/openstack"
        ## Wir lassen uns die Variablen anzeigen, immer gut, alles erst zu testen
        put "$0 = " & $0 & CR & "$1 = " & $1 into fld "anzeige of cd 1
      end startup

      $0 sollte der Name (oder Pfad?) Deiner EXE sein
      $1 der Pfad zu dem Bild, was Deine EXE öffnen soll.

      Wenn das obige klappt, kannst Du dann Folgendes machen:
      Erstelle einen Handler, der das Bild dann in einem Bildobjekt anzeigt und rufe diesen Handler etwas zeitversetzt, die Engine benötigt etwas, um sich ganz auszubreiten und den Stack „quasi“ erst bereitstellt.

      ## Das hier auch ins Stackskript!

      command bildanzeigen dasbild
         set the filename of img "Dein Boildobjekt hier..." of cd XYZ to dasbild
      end bildanzeigen

      Und das entsprechende „startup“ Skript:

      on startup
        put $1 into einbild
        ## Sofern $1 der Pfad zum Bild ist, siehe oben...
        send "bildanzeigen einbild" to me in 30
        ## 30 = 30 Ticks = eine halbe Sekunde, sollte reichen
      end startup

      Bitte mal ausprobieren, Teil 2 kommt etwas später…

    • #13346
      Klaus Major
      Verwalter

      Und weiter geht’s…

      2. Deine EXE ist bereits geöffnet
      Hierzu gab es leider gar keine Infos, ich habe mir das zusammengeklaubt und denke, dann wird die Message „relaunch“ an Deine EXE gesendet.

      Auch mit den Umgebungsvarialben wie bei „startup“, allerdings in gänderter Reihenfolge. Daher bitte auch einmal ausprobieren:

      on relaunch
        ## Wir lassen uns die Variablen anzeigen, immer gut, alles erst zu testen
        put "$0 = " & $0 & CR & "$1 = " & $1 & CR "$2 = " & $2 into fld "anzeige of cd 1
      end relaunch

      Wenn Du nun weißt, in welcher Variablen der Dateiname des bildes liegt, kannst Du wieder:

      on relaunch
        put $1 into einbild
        ## Sofern $1 der Pfad zum Bild ist, siehe oben...
        send "bildanzeigen einbild" to me in 30
      end relaunch

      Bitte mal ausprobieren und berichten, viel Erfolg!

      Gruß

      Klaus

    • #13540
      Klaus Major
      Verwalter

      Hallo?
      Kein Interesse an einer Lösung?

    • #13563
      xamsoftware
      Teilnehmer

      Hallo Klaus.
      habs ausprobiert, hat allerdings leider nicht wie gewünscht geklappt.

      Gruß,

      Max

    • #13565
      Klaus Major
      Verwalter

      Die Beispiele sind aus dem Dictionary, sollten also weitgehend stimmen.
      Was genau hast Du denn geskripted? Und was und wie getestet?
      Bitte mal Deine Skripte hier posten, danke.

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