-
Forum: Die Delphi-IDE
by KodeZwerg,
1. Jul 2018
Ich weiß ja nicht ob Du das Plugin schonmal gestartet hast, es zeigt einem nach-und-nach mehr-und-mehr informationen über ge-/entladene Dateien, so etwas zeigt mir meine IDE nirgends an oder ich habe nicht tief genug geschaut.
Dafür habe ich in der Messages-Area nun zwei Reiter, einmal für die Datei-Informationen und einmal für Hook-Informationen.
Was bei meinem Delphi 2009 noch total falsch...
-
Forum: Die Delphi-IDE
by KodeZwerg,
1. Jul 2018
Das was Du möchtest funktioniert nicht. Ich habe gestern Nacht noch ein wenig herum-experimentiert um herauszufinden ob man mit der OnMessage Methode ein passendes Ereignis abfangen, auswerten und verarbeiten kann = Nein man kann nicht bzw ich habe dabei die Geduld verloren.
Bei Interesse, im Anhang ist die OnMessage Variante die gleichzeitig einen neuen Message-Reiter "MyHook" einrichtet.
...
-
Forum: Die Delphi-IDE
by KodeZwerg,
30. Jun 2018
*entfernt, Beitrag war schädlich/gefährlich*
-
Forum: Die Delphi-IDE
by KodeZwerg,
30. Jun 2018
Hier ist eine Version die tatsächlich die Titelzeile (leider flackernd) up-to-date hält.
Das ist praktisch das gleiche wie oben nur total radikal da bei jeder Msg die Caption ein Update erhält sofern die nicht den Inhalt der letzten Datei entspricht.
Ich empfehle es nicht zu benutzen, Source kannst Du ja nach belieben noch verbessern/verschlimmern :lol:
Man sieht mehr den Pfad+Namen als das...
-
Forum: Die Delphi-IDE
by KodeZwerg,
30. Jun 2018
Hier ist eine NICHT funktionierende Version mit Deinem Hook Vorschlag.
Es funktioniert NICHT oder ich mache es falsch.
Den Hook habe ich ausgeschaltet damit die IDE heile bleibt.
constructor TShowPath.Create;
begin
inherited Create;
// Application.HookMainWindow(MessageHook);
// Application.OnMessage := AppMessage;
// fHWnd := AllocateHWnd(WndMethod);
end;
-
Forum: Die Delphi-IDE
by KodeZwerg,
30. Jun 2018
Hier ein mini Update für Messages, nun haben die Ihren Eigenen Reiter (Tab).
Jetzt werden keine Messages mehr durcheinander gewürfelt, und falls Messages nicht sichtbar sind schaltet die das Plugin an.
Vorschau:
-
Forum: Die Delphi-IDE
by KodeZwerg,
28. Jun 2018
Danke dafür, das bestätigt irgendwie auch meine Recherche. Man kann ja vieles aber doch nicht alles, mir fehlt da jedenfalls das nötige knoffhoff.
Ich spiele noch ein wenig mit AllocWnd()/AllocateHWnd() herum, vielleicht passt da ne hook rein die Delphi nix böses antut. Falls ich da Erfolg haben sollte sag ich hier bescheid, hier ist sonst Endstation für mich und TE hat Pech:oops:
-
Forum: Die Delphi-IDE
by KodeZwerg,
28. Jun 2018
Ich mache es ja nur aus Akademischer Sicht weil mich das Thema OTA interessiert (Neuland) und um dem TE zu helfen.
Ich habe ja eine Lösung vor Augen aber ich weiß nicht wie ich das umsetze im OTA-konformen Stil.
Eine simple Msg Hook einrichten die auf WM_SETTEXT für die Caption reagiert.
Aber wie bekomme ich eine WndProc da reingecodet ohne eine Msg-Schleife zu haben, da bin ich völlig...
-
Forum: Die Delphi-IDE
by KodeZwerg,
28. Jun 2018
Ich habe mal einen SetTimer() eingebaut, darauf reagiert die IDE allergisch und forciert sofort ein Caption-Refresh, also diese Möglichkeit scheidet damit aus.
procedure TimerProc(Wnd: HWnd; Msg, TimerID, dwTime: DWORD); stdcall;
begin
if NewTitle <> '' then Application.MainForm.Caption := NewTitle;
end;
....
initialization
NewTitle := 'Test 123';
hTimer :=...
-
Forum: Die Delphi-IDE
by KodeZwerg,
28. Jun 2018
Hier ein mini Update, es werden alle von D2009 unterstützten Ereignisse in der Messages-Area protokolliert mit jeweils einem "@ Ereignis" und eine "NewTitle" Variable ist hinzugekommen, falls es wer mit nem Hook hinbekommt, da ist der Inhalt der in die Caption gehört enthalten.
Viel Erfolg dabei!
Ps: So sehen nun die Messages aus wenn man ShowPath eingebunden hat:
-
Forum: Die Delphi-IDE
by KodeZwerg,
28. Jun 2018
Es ist jeder Eingeladen daran mitzuwirken, mir fehlt mit OTA leider die Erfahrung um all das was Du schreibst umzusetzen, ich habe alles mir Mögliche getan um es umzusetzen, dem Wunsch des TEs entsprechend die Caption und für mich zum debug die Messages.
Wenn jemand einen Hook realisieren kann, ich wäre auch daran Interessiert! (oder eine andere Variante, Hauptsache die Caption bleibt)
...
-
Forum: Die Delphi-IDE
by KodeZwerg,
28. Jun 2018
Alsowenn man das Package installiert hat passieren zwei Sachen in der Delphi 2009 IDE, zum einen ist die Caption die der zuletzt geööffneten Datei und in der Messages Area wird es auch nochmal reingeschrieben.
Hier die Messages wenn ich das Projekt ShowPath öffne:
Ich brauch für OpenTools Api noch mehr Erfahrung um einen Hook zu realisieren, ich weiß nicht wie ich das anstellen soll.
...
-
Forum: Die Delphi-IDE
by KodeZwerg,
28. Jun 2018
Hier ist jetzt eine Version die halbwegs funktioniert und alle veralteten Units sind rausgeflogen.
Bei meinem Delphi 2009 entsteht allerdings ein Problem, die Caption wird ab und zu automatisch neu gezeichnet, somit fliegt der Dateipfad+Name wieder aus der Caption aber ansonsten macht es das was Du wolltest.
Viel Spass damit!
Wichtig: Benutze nur die Dateien aus diesem Archiv, am besten in...
-
Forum: Die Delphi-IDE
by KodeZwerg,
28. Jun 2018
*Beitrag veraltet + entfernt, siehe nächsten Beitrag*
-
Forum: Die Delphi-IDE
by KodeZwerg,
27. Jun 2018
Ich habe es mir mal heruntergeladen.
Der Fehler entsteht hier: (Datei ShowPath.pas) Application.Title := ExtractFilePath( ToolServices.GetProjectName );
Das ToolServices.GetProjectName löst den Fehler aus, wie es korrekt lauten muss weiß ich selbst noch nicht.
Falls sich damit jemand auskennt, hier die ganze procedure
procedure Register;
begin
OriginalTitle := Application.Title;
...
-
Forum: Die Delphi-IDE
by KodeZwerg,
27. Jun 2018
Steht "C:\Users\Public\Documents\Embarcadero\Studio\18.0\ Bpl\" im BPL/DCP/Library Path ?
Und wird das bpl Verzeichniss wirklich mit einer leerstelle am Anfang betitelt?
Daran könnte es liegen, nur eine Vermutung!