Partload Base

    • Beta
    • Closed Source

    Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von ManuelSoftware.

      Partload Base

      Name:
      Partload Base

      Beschreibung:
      Die Partload Base bietet die Basis für eine Partload Datei, um dessen Interpreter herauszufiltern, temporär zu downloaden und mit diesem die Datei zu interpretieren.
      Was ist Partload überhaupt?
      Fangen wir mal von vorne an.
      Ich hab mir mal gedacht, wie ist es wenn man eine große Datei hat, diese aber nicht im ganzen auf einem Host hochladen will (z.B. weil man bei diesem nichtmehr genug Speicherplatz hat),
      sondern diese Datei in mehrere Teile aufsplitet? Soll ich dann jedem, dem ich die Datei senden möchte die Links aller Teile senden? Warum nicht einfacher?
      Also habe ich mich an eine Mini-Skriptsprache gemacht mit einer Starken Anlehnung an das INI-Format.
      ; = Kommentar
      [partload] = Klassenbezeichnnung (kann weggelassen werden, nur zur übersichtlichkeit)
      def : Beschreibt, dass danach eine Typendeklaration folgt(möglich var (variable, ganz normal), counter (Zähler, der Pro Verwendung einmal nach oben gezählt wird) und websrc (Läd den Inhalt aus dem Internet (oder einer Datei), URL ist der, der durch das folgende istgleich(=) folgt) und wird mit dem folgenden = [INHALT] gesetzt.
      Zum Hinzufügen von Source nutzt man (add src=[source] , source kann sein: URL, Base64(wird deklariert durch vorangesetztes base64:) oder eine Datei(mit vorangesetztem file://))
      Natürlich kann man auch eine vorhandene Datei laden und den Source flushen. Dafür gibts "Commands", die mit einer Klammer-auf ( starten.
      Bsp. Flushen einer Datei

      Quellcode

      1. (flush=[DATEI])

      Bsp. Laden einer Datei

      Quellcode

      1. (load=[DATEI])

      Um variablen zu nutzen, setzt man den Name der Variable in eckige klammern [variablenName]. Systemvariablem sind auch vordefiniert: [%PCNAME%], [%USERDOMAIN%] und [%USERNAME%]. Bei der Angabe des Interpreters, welcher immer in Zeile 0 (oder 1, je nachdem wie man es sieht) steht, kann man nur die Variable [%OSTYPE%] verwenden (Gibt den Typen des Systems, in lowercase, aus (Windows, Linux, etc.)). Die Angabe des Interpreters erfolgt durch geschweifte Klammern {INTERPRETERURL}.
      Nungut so enstand nun die Idee. Den Syntax hab ich euch auch erklärt, also was fehlt?
      Natürlich ein Standart-Interpreter.
      Ich habe mich rangesetzt und einen geschrieben, den man unter

      Quellcode

      1. {https://codingcrew.net/partload/1.0/[%OSTYPE%]/default.ppc}
      laden kann. [Momentan nur für Windows verfügbar]
      Dieser Interpreter befolgt die Richtlinien und den Syntax von Partload und wird demnächst OpenSource sein.
      Möglich wäre es, wenn man einen eigenen Interpreter schreibt, auch seine Regeln selbst zu schreiben und nicht den Partload-Syntax sondern eine eigene Implementation von Partload zu treffen und seine Regeln selbst zu schreiben.

      Screenshot(s):
      Hier ein Kombinier-Vorgang zweiter Textdateien:

      Der Code zum kombinieren (benutzt Counter als Beispiel)
      als Text für euch zum selbsttesten:

      Quellcode

      1. {https://codingcrew.net/partload/1.0/[%OSTYPE%]/default.ppc}
      2. [partload]
      3. def var saveas=Teil1_und_Teil2.txt
      4. def counter teil=1
      5. def var teil1=part[teil].txt
      6. def var teil2=part[teil].txt
      7. add src=https://codingcrew.net/partload/1.0/windows/[teil1]
      8. add src=https://codingcrew.net/partload/1.0/windows/[teil2]
      9. (flush=[saveas])





      Verwendete Programmiersprache(n) und IDE(s):
      Visual C# 7.0 / Visual Studio 2017 Professional

      Systemanforderungen:
      .NET Framework 4.0 (Default-Interpreter momentan in 4.5 kompiliert, wird sich aber ändern)
      Je nach Wahl des Interpreters unterschiedlich

      Systemveränderungen:
      Interpreter wird durch Download kurzzeitig in den Temp-Ordner geladen.
      Erstellt Dateien aus mehreren Parts
      Bei Installation, registriert .xpl für sich

      Download(s):
      Setup (empfohen, da es die Dateiendung .xpl registriert) [372,21 kB]
      Standalone (wird durch Drag'n'Drop oder durch CommandLine angesprochen) [10,38 kB]

      Lizenz/Weitergabe:
      Freeware, Closed Source (wird sich demnächst ändern...)

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „ManuelSoftware“ () aus folgendem Grund: Hinzufügen von Screenshots

      Ich finde diese Idee eines "Downloadformates", welches Scriptsprachenelemente enthält ziemlich cool.
      Hab aus Langeweile und Interesse mal eine Webbasierte Version deines Programms gemacht, welche die Dateien auf dem Server zusammenfügt, und dann an den Browser als Download weiterleitet (über Streams und so.). Der Interpreter ist in Javascript geschrieben (aktuell ziemlich grottig ^^ soll aber nur eine Demo sein) und ist an deinen Syntax angelehnt. Interpreter werden in einer JavaScript VM (Nodejs) ausgeführt. Kannst dir das ja mal anschauen. OFFLINE (Sorucecode kann ich bei Anfrage Weitergeben) <== einfach die url aufrufen - Benutzung auf eigene Gefahr! - Liefert aber mit genau diesem Link nur eine Textdatei aus. Da wird dein Beispielscript ausgeführt (Und dem Browser die fertige Textdatei angezeigt). Einfach nach /dl/... die escapte URL angeben, wo die xpl-datei liegt.

      ps: du hast Konversationen deaktiviert, hätt dir das sonnst via pn geschrieben ^^

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcel1997“ ()