Benutzerdefinierte Befehle aus externer Anwendung heraus?

German support forum

Moderators: Hacker, Stefan2, white

Axel
Junior Member
Junior Member
Posts: 41
Joined: 2004-03-03, 12:29 UTC

Post by *Axel »

Ja, aber damit kann ich doch nicht gezielt den Pfad im aktiven Panel ändern, oder?
Ich zitiere mich noch mal selber:
Axel wrote:Ich habe den "CD"-Befehl nun für mich entdeckt.
Damit kann ich ja den Pfad des linken und/oder rechten Panels setzen.
Kann ich auch nur gezielt den des aktiven Panels setzen?
Ich hatte gehofft das würde gehen, wenn ich nur einen Pfad (also auch ohne NewLine im String) übergebe, aber dann macht der Befehl leider gar nichts.
Oder habe ich etwas übersehen?
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 50625
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Ja, über den Parameter "flags" im verlinkten Beispiel. Die Flags sind:
S Parameter sind Source/Target statt Links/Rechts
T Verzeichnisse in neuem Tab öffnen und aktivieren
B Verzeichnisse in neuem Tab öffnen im Hintergrund (background)
L oder R: Linkes bzw. rechtes Panel aktivieren
Author of Total Commander
https://www.ghisler.com
Axel
Junior Member
Junior Member
Posts: 41
Joined: 2004-03-03, 12:29 UTC

Post by *Axel »

Danke!
Da bin ich aber baff, dass ich das im Sample nicht gesehen habe.
Allerdings wäre ich auch ohne eine Beschreibung der möglichen Flags nicht weit gekommen. Die fehlt da nämlich gänzlich.
Ist das das erste Posting, wo die Flags so zusammengefasst wurden, oder gibt es da eine Doku drüber?
Zumindest kann ich nichts finden...
Etwas 'Zentrales, Umfassendes' über diese 'SendMessage'-Schnittstelle wäre toll. :wink:
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 50625
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Leider gibt es z.Zt. nicht mehr, als im Wiki steht. Eigentlich wird das vor allem vom TC intern benutzt, wenn man ihn mit dem Parameter /O startet un weitere Parameter übergibt. Er sendet dann diese Parameter mit WM_COPYDATA an den bereits laufenden.
Author of Total Commander
https://www.ghisler.com
Axel
Junior Member
Junior Member
Posts: 41
Joined: 2004-03-03, 12:29 UTC

Post by *Axel »

Ein Frage hätte ich noch:
Wenn ich mehrere "SendMessage" hintereinander sende, so scheint nur der erste Aufruf ausgeführt zu werden.
Erst wenn ich einen 'Thread.Sleep()' zwischen die Aufrufe setze, funktioniert es.
Ist das die richtige Vorgehensweise, oder gibt es einen besseren/sichereren Weg?
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 50625
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Seltsam, ich kann keine "Bremse" gegen mehrere Aufrufe finden.Aber ein kurzes Sleep zwischen den Aufrufen kann sicher nicht schaden.
Author of Total Commander
https://www.ghisler.com
Axel
Junior Member
Junior Member
Posts: 41
Joined: 2004-03-03, 12:29 UTC

Post by *Axel »

Das ist ja seltsam.
Ich werde das mal weiter beobachten bzw. versuchen einzugrenzen woran es liegt.
Post Reply