Problem mit FSplugin + Packerplugin [Problem gelöst]

German support forum

Moderators: Hacker, Stefan2, white

Post Reply
User avatar
NullP01nter
Junior Member
Junior Member
Posts: 4
Joined: 2006-11-10, 23:23 UTC
Location: Saxony/Germany
Contact:

Problem mit FSplugin + Packerplugin [Problem gelöst]

Post by *NullP01nter »

Hi Leute,

mein aktuelles Projekt ist das Anbinden des Dateisystems von Ensoniq-Samplern an den TC. Das FSplugin ist soweit fast fertig (Lesen und Schreiben von externen Festplatten und Lesen von CDs im Ensoniq-Format). Weiterhin habe ich ein Packerplugin zum Probehören der einzelnen Instrumente geschrieben, welches super funktioniert, wenn ich es auf eine Datei von der lokalen Platte anwende.

Wenn ich jedoch versuche, ein Instrument auf dem Remote-Dateisystem (EnsoniqFS) zu öffnen (mit Enter oder Ctrl+PgDn), dann passiert einfach gar nichts. Das Packerplugin wird nicht aufgerufen (auch CanYouHandleThisFile() wird nicht ausgeführt).

Ich habe auch testweise FsExecuteFile() im FS-Plugin implementiert, mit dem Erfolg, daß bei Rückgabe von FS_EXEC_YOURSELF die Datei ins Temp heruntergeladen wird und von dort das Programm, welches in Windows mit der Dateiendung verknüpft ist, aufgerufen wird (das ist allerdings ein ganz anderes Programm). Nicht jedoch das Packerplugin.

Ich will hier keine Bugs in meinem Quellcode ausschließen - deshalb mal die generelle Frage: Lassen sich Packerplugins auf Remote-Dateisysteme von FS-Plugins anwenden? Gibts da Beschränkungen? Hab ich was übersehen? (Ich habe vorhin ca. 2 Stunden das Forum nach vergleichbarem durchwühlt, habe aber leider nicht die richtigen Suchbegriffe oder niemand hat ein ähnliches Problem gehabt.

Danke für Eure Hilfe.
Last edited by NullP01nter on 2006-11-12, 21:20 UTC, edited 1 time in total.
There are 10 kinds of people in this world: Those who understand binary and those who don't.
Juergen
Power Member
Power Member
Posts: 517
Joined: 2003-05-02, 18:19 UTC
Location: Berlin (Germany)
Contact:

Post by *Juergen »

NullP01nter wrote:Ich will hier keine Bugs in meinem Quellcode ausschließen - deshalb mal die generelle Frage: Lassen sich Packerplugins auf Remote-Dateisysteme von FS-Plugins anwenden?
Leider weiß ich es auch nicht definitiv, aber meine Vermutung ist: "Nein". Sie gründet sich auf ein paar Tests, die ich gerade mit Herrn Ghislers Beispiel-Dateisystem-Plugin "Drives" und meinem eigenen Packer-Plugin "mbox" gemacht habe (TC 6.54a).

Normalerweise öffnet mein Plugin mbox-Dateien bei Drücken von [Strg]&[BildAb] sowie [Enter]. In Verbindung mit dem "Drives" FS-Plugin (das einfach nur das lokale Dateisystem widergibt) passiert bei Drücken von [Strg]&[BildAb] gar nichts, und nach [Enter] sagt eine Messagebox des Total Commanders: "Fehler beim Programmaufruf!".
In dem von "Drives" zur Verfügung gestellten Dateisystem kann der TC nicht einmal selbst ZIP-Archive öffnen (obwohl Unterstützung dafür eingebaut ist, und er also kein Plugin dafür benötigt). Bei [Enter] oder Doppelklick werden die ZIP-Archive mit dem verknüpften externen Programm geöffnet -- so wie Du es ja auch beschrieben hast.

Ob sich im TC 7.0 diesbezüglich etwas geändert hat, weiß ich nicht.

Gruß, Jürgen
My add-ons and plugins for TC: NiftyLink, mbox, Sequences
User avatar
NullP01nter
Junior Member
Junior Member
Posts: 4
Joined: 2006-11-10, 23:23 UTC
Location: Saxony/Germany
Contact:

Post by *NullP01nter »

Hallo Jürgen,

danke fürs Ausprobieren. Ich habe mittlerweile noch einige Experimente angestellt, aber weitergekommen bin ich deswegen trotzdem nicht.
Ob sich im TC 7.0 diesbezüglich etwas geändert hat, weiß ich nicht.
Im TC 7.0 verhält sich die Sache genauso.

Das ist für mein Projekt natürlich doof. Jetzt habe ich es endlich geschafft, das Dateisystem les- und schreibbar zu machen, muß aber für die Instrumentendateien jedesmal erst eine Kopie nach lokal machen und dort reinhören.

Ob das Verhalten vom TC in dieser Hinsicht beabsichtigt ist? Oder geht es aus programmtechnischen Gründen nicht ohne großen Aufwand? Sollten wir da einen Feature-Request machen oder das Dingens als BUG markieren?

Fragen über Fragen...

Grüße
Thoralt
There are 10 kinds of people in this world: Those who understand binary and those who don't.
matbal
Member
Member
Posts: 182
Joined: 2004-11-28, 19:40 UTC

Post by *matbal »

Hallo NullP01nter

ich kann dir zwar bei deinem Problem nicht helfen, ich wäre allerdings an deine Plugins interessiert, falls du die mal bereitstellen willst.

So wie es klingt, kann man mit deinem Plugin einzelne Instrumente von einer Ensoniq-CD extrahieren. Ich habe das damals unter Linux mit den Akai-Tools gemacht. Und anschließend unter Windows mit EPS-Disk (einem Kommandozeilenprogramm) einzelne Instrumente auf Disketten für mein TS10 kopiert. Ich wollte nicht immer ein CDRom-Laufwerk mit auf die Bühne schleppen....

matbal
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 50856
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Packer-Plugins gehen leider nicht mit Dateisystem-Plugins.
Ginge es vielleicht mit einem Lister-Plugin? Da kopiert TC die Datei vom Dateisystem-Plugin nach TEMP und übergibt sie dann.
Author of Total Commander
https://www.ghisler.com
User avatar
NullP01nter
Junior Member
Junior Member
Posts: 4
Joined: 2006-11-10, 23:23 UTC
Location: Saxony/Germany
Contact:

Post by *NullP01nter »

Hallo Christian,
Packer-Plugins gehen leider nicht mit Dateisystem-Plugins.
Ginge es vielleicht mit einem Lister-Plugin? Da kopiert TC die Datei vom Dateisystem-Plugin nach TEMP und übergibt sie dann.
Danke für die Antwort. Ich habe mich schon mit dem Gedanken an ein Lister-Plugin angefreundet, auch aus anderen Gründen. Das ist natürlich DIE Lösung :D So wird's gemacht.

@matbal:
Ich habe die Plugins bereits zu einem Teil online:
http://www.thoralt.de/projects/ensoniqunpacker/ensoniqunpacker.html
Dies sind zwei Packer-Plugins, mit denen man Disk-Images (EDE/EDA/EDT/GKH von Disketten, CD-Images und Festplatten-Images) öffnen und Instrumente herauskopieren kann. Mit dem zweiten Plugin kann man dann in diese Instrumente hineinschauen und die Wavesamples herauskopieren oder mit F3 direkt anhören.

Wegen der Unhandlichkeit des Schreibsupports und des o. g. Problems habe ich aber die Entwicklung an diesen beiden Plugins eingestellt (sie tun ja jetzt schon, was sie sollen). Stattdessen ist momentan das Dateisystem-Plugin EnsoniqFS (Lesen und Schreiben von Ensoniq-Datenträgern) und ein geplantes Lister-Plugin für die Instrumente in Arbeit. Das EnsoniqFS ist so gut wie fertig, nur muß das Schreiben noch ein bißchen mehr getestet werden (ich will ja nicht, daß Ihr Euch die Ensoniq-Platten zerwurstelt :)). Das werde ich in den nächsten Tagen online stellen.

Mal nebenbei gefragt: Wo wäre denn eine geeignete Stelle im Web, um die Veröffentlichung solcher Plugins zu verkünden?

Viele Grüße
Thoralt
There are 10 kinds of people in this world: Those who understand binary and those who don't.
User avatar
Stitscher
Power Member
Power Member
Posts: 1058
Joined: 2004-02-17, 12:34 UTC
Location: Hamburg, Germany

Post by *Stitscher »

NullP01nter wrote: Mal nebenbei gefragt: Wo wäre denn eine geeignete Stelle im Web, um die Veröffentlichung solcher Plugins zu verkünden?
Ich denke http://www.totalcmd.net/ ist dafür der richtige Ort. Schreib Ergo an und du bekommst einen FTP-Zugang.

Stitscher
User avatar
NullP01nter
Junior Member
Junior Member
Posts: 4
Joined: 2006-11-10, 23:23 UTC
Location: Saxony/Germany
Contact:

Post by *NullP01nter »

Ich denke http://www.totalcmd.net/ ist dafür der richtige Ort. Schreib Ergo an und du bekommst einen FTP-Zugang.
Danke. Ich werde die Plugins mal entsprechend aufbereiten und mich an Ergo wenden.

Wenn einer der hier Mitlesenden Lust hat und einen Ensoniq Sampler mit SCSI besitzt, kann er schonmal eine Beta von EnsoniqFS testen: http://www.thoralt.de/projects/ensoniqfs/ensoniqfs.html

Sobald keine fahrlässigen Bugs mehr enthalten sind, werde ich den Source auf meiner Homepage und auf totalcmd.net veröffentlichen.

Viele Grüße
Thoralt
There are 10 kinds of people in this world: Those who understand binary and those who don't.
Post Reply