AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Die Delphi-IDE Projektpfad in der IDE-Titelzeile anzeigen?

Projektpfad in der IDE-Titelzeile anzeigen?

Ein Thema von PeterPanino · begonnen am 27. Jun 2018 · letzter Beitrag vom 1. Jul 2018
Antwort Antwort
Seite 1 von 4  1 23     Letzte » 
PeterPanino

Registriert seit: 4. Sep 2004
1.465 Beiträge
 
Delphi 10.4 Sydney
 
#1

Projektpfad in der IDE-Titelzeile anzeigen?

  Alt 27. Jun 2018, 17:32
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?
  Mit Zitat antworten Zitat
PeterPanino

Registriert seit: 4. Sep 2004
1.465 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Projektpfad in der IDE-Titelzeile anzeigen?

  Alt 27. Jun 2018, 18:14
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?
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Projektpfad in der IDE-Titelzeile anzeigen?

  Alt 27. Jun 2018, 21:20
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!
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Projektpfad in der IDE-Titelzeile anzeigen?

  Alt 27. Jun 2018, 21:57
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
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
Gruß vom KodeZwerg

Geändert von KodeZwerg (27. Jun 2018 um 22:15 Uhr)
  Mit Zitat antworten Zitat
PeterPanino

Registriert seit: 4. Sep 2004
1.465 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Projektpfad in der IDE-Titelzeile anzeigen?

  Alt 28. Jun 2018, 00:17
Ich habe jetzt in ShowPath.pas mal testweise alle GetProjectName durch GetCurrentFile ersetzt.

Es kam aber die gleiche Fehlermeldung:

fehlermeldung.jpg
  Mit Zitat antworten Zitat
PeterPanino

Registriert seit: 4. Sep 2004
1.465 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Projektpfad in der IDE-Titelzeile anzeigen?

  Alt 28. Jun 2018, 00:39
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:

fehlermeldungneustart.png

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.
  Mit Zitat antworten Zitat
PeterPanino

Registriert seit: 4. Sep 2004
1.465 Beiträge
 
Delphi 10.4 Sydney
 
#7

AW: Projektpfad in der IDE-Titelzeile anzeigen?

  Alt 28. Jun 2018, 00:44
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.
  Mit Zitat antworten Zitat
PeterPanino

Registriert seit: 4. Sep 2004
1.465 Beiträge
 
Delphi 10.4 Sydney
 
#8

AW: Projektpfad in der IDE-Titelzeile anzeigen?

  Alt 28. Jun 2018, 00:54
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;
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#9

AW: Projektpfad in der IDE-Titelzeile anzeigen?

  Alt 28. Jun 2018, 01:10
*Beitrag veraltet + entfernt, siehe nächsten Beitrag*
Gruß vom KodeZwerg

Geändert von KodeZwerg (28. Jun 2018 um 02:11 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: Projektpfad in der IDE-Titelzeile anzeigen?

  Alt 28. Jun 2018, 01:41
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.
Angehängte Dateien
Dateityp: 7z ShowPath.7z (2,2 KB, 6x aufgerufen)
Gruß vom KodeZwerg

Geändert von KodeZwerg (28. Jun 2018 um 02:31 Uhr)
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:25 Uhr.
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