Delphi-PRAXiS
Seite 1 von 4  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   Projektpfad in der IDE-Titelzeile anzeigen? (https://www.delphipraxis.net/196886-projektpfad-der-ide-titelzeile-anzeigen.html)

PeterPanino 27. Jun 2018 16:32

Projektpfad in der IDE-Titelzeile anzeigen?
 
Hallo und schönen Tag!

Ist es möglich, den Pfad des aktuell geladenen bzw. ausgewählten Projektes etwa in der Titelzeile des IDE-Fensters anzuzeigen?

PeterPanino 27. Jun 2018 17:14

AW: Projektpfad in der IDE-Titelzeile anzeigen?
 
Es gibt hier einen Patch von Embarcadero, der das verspricht:

http://cc.embarcadero.com/item/26161

Ich habe es versucht, in Delphi Berlin 10.1 zu installieren. Während das Compilieren und Erzeugen fehlerfrei ging, kam beim Installieren dieser Fehler zum Vorschein:

---------------------------
Error
---------------------------
Registration procedure, Showpath.Register in package C:\Users\Public\Documents\Embarcadero\Studio\18.0\ Bpl\ShowProjectPath.bpl raised exception class EAccessViolation: Access violation at address 650928E2 in module 'ShowProjectPath.bpl'. Read of address 00000000.
---------------------------
OK
---------------------------

Habe dann versucht, ShowProjectPath.bpl manuell zu installieren, dabei kam wieder der Fehler:

---------------------------
ShowProjectPath - Delphi 10.1 Berlin - ShowProjectPath.dproj [Built]
---------------------------
Registration procedure, Showpath.Register in package C:\Users\Public\Documents\Embarcadero\Studio\18.0\ Bpl\ShowProjectPath.bpl raised exception class EAccessViolation: Access violation at address 46A028E2 in module 'ShowProjectPath.bpl'. Read of address 00000000.
---------------------------
OK
---------------------------

Das ist die Registration procedure:

Code:
procedure Register;
begin
  OriginalTitle := Application.Title;
  Index := (BorlandIDEServices as IOTAServices).AddNotifier( TShowPath.Create );
  Application.Title := ExtractFilePath( ToolServices.GetProjectName );
end;
Syntaxmäßig ist hier kein Fehler, deswegen wurde es auch anstandslos kompiliert.

Wo ist hier der Fehler?

KodeZwerg 27. Jun 2018 20:20

AW: Projektpfad in der IDE-Titelzeile anzeigen?
 
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!

KodeZwerg 27. Jun 2018 20:57

AW: Projektpfad in der IDE-Titelzeile anzeigen?
 
Ich habe es mir mal heruntergeladen.
Der Fehler entsteht hier: (Datei ShowPath.pas)
Delphi-Quellcode:
  Application.Title := ExtractFilePath( ToolServices.GetProjectName );
Das
Delphi-Quellcode:
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
Delphi-Quellcode:
procedure Register;
begin
  OriginalTitle := Application.Title;
  Index := (BorlandIDEServices as IOTAServices).AddNotifier( TShowPath.Create );
  Application.Title := ExtractFilePath( ToolServices.GetProjectName );
end;
Ps: Anzumerken wäre noch folgendes was auf der Download-Seite steht....
Zitat:

For Delphi, Version 6.0 to 6.0

PeterPanino 27. Jun 2018 23:17

AW: Projektpfad in der IDE-Titelzeile anzeigen?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe jetzt in ShowPath.pas mal testweise alle GetProjectName durch GetCurrentFile ersetzt.

Es kam aber die gleiche Fehlermeldung:

Anhang 49405

PeterPanino 27. Jun 2018 23:39

AW: Projektpfad in der IDE-Titelzeile anzeigen?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe jetzt einfach mal die Zeile Application.Title := ExtractFilePath... in der procedure Register auskommentiert.

Jetzt funktionierte das install.

Dann versuchte ich, die IDE neu zu starten, was wegen einer hartnäckigen Fehlermeldung nicht ging. So beendete ich die IDE im Taskmanager.

Dann beim Neustarten der IDE kam diese Fehlermeldung:

Anhang 49406

So musste ich die IDE wieder im Taskmanager schließen, weil die Fehlermeldung nicht wegging.

Dann entfernte ich die ShowProjectPath.bpl aus dem BPL-Verzeichnis.

Erst dann konnte ich die IDE erfolgreich neu starten.

PeterPanino 27. Jun 2018 23:44

AW: Projektpfad in der IDE-Titelzeile anzeigen?
 
Heißt das jetzt, dass man alles, wo Delphi 6 draufsteht, wegschmeißen kann?

Immerhin steht es ja auf der Embarcadero-Seite. Aber offensichtlich hat das bei Embarcadero niemand mit einer aktuellen Delphi-Version getestet.

PeterPanino 27. Jun 2018 23:54

AW: Projektpfad in der IDE-Titelzeile anzeigen?
 
In der Datei ToolIntf.pas steht:

Zitat:

The Tool services object is created on the application side, and is
passed to the VCS/Expert Manager DLL during initialization. Note that
the application is responsible for creating and freeing the interface
object, and the client should never free the interface.
Allerdings ist diese Datei als "deprecated" deklariert:

Code:
unit ToolIntf deprecated;

KodeZwerg 28. Jun 2018 00:10

AW: Projektpfad in der IDE-Titelzeile anzeigen?
 
*Beitrag veraltet + entfernt, siehe nächsten Beitrag*

KodeZwerg 28. Jun 2018 00:41

AW: Projektpfad in der IDE-Titelzeile anzeigen?
 
Liste der Anhänge anzeigen (Anzahl: 1)
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 ein Leerverzeichnis!

Ps: Man könnte theoretisch die Filename variable oder die modifizierte Caption nochmal global speichern und bei den leeren Events mit aufrufen lassen um den zuletzt offenen Datei-Namen länger in der Caption zu behalten, falls Du verstehst was ich meine.
Oder eine Hook integrieren die WM_SETTEXT für Application.MainForm.Caption abfängt und überschreibt? Das wäre glaube ich besser.:gruebel::gruebel::gruebel:


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:16 Uhr.
Seite 1 von 4  1 23     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz