![]() |
Code-Completion bei Delphi XE2 funktioniert nicht
Hallo,
ich weiß, dieses Thema wurde schon einige mal hier diskutiert! Dennoch finde ich keine Lösung, oder besser gesagt, keine der angebotenen Lösungen (Unit-Aliases angeben, IDE Fix Pack XE2 installieren, ...) hat funktioniert. Wir haben ein größeres Projekt mit ca. 25 Packages auf Delphi XE2 (Update 4) umgestellt. Leider funktioniert die Code-Completion gar nicht, oder nur sporadisch bei einigen Units. D.h. - CTRL-Space zeigt nichts mehr an, d.h. auch kein Popup-Menu - CTRL-Shift-Space zeigt keine Parameter einer Methode mehr an - nach Eingabe eines . kommt keine Liste der Methoden, Properties, usw. einer Klasse Ich verzichte ungern auf dieses Feature der IDE, weil es das Arbeiten doch sehr erleichtert. Hat irgend jemand eine Idee, wie ich der IDE wieder auf die Sprünge helfen kann? Danke, Hans. |
AW: Code-Completion bei Delphi XE2 funktioniert nicht
Liste der Anhänge anzeigen (Anzahl: 1)
Und was ist bei Code Insight eingestellt?
|
AW: Code-Completion bei Delphi XE2 funktioniert nicht
Bis auf:
Autom. vervollständigen (bei mir aktiv) Hinweise (bei mir inaktiv) bei der Quelltextvorlagen-Vervollständigung steht genau das gleiche drin. Habe ich aber mal testhalber so eingestellt wie du, hat leider nichts gebracht. |
AW: Code-Completion bei Delphi XE2 funktioniert nicht
Eventuell irgendein Add-On, das schon etwas auf STRG+SPACE gelegt hat? CnPacks legt meine ich seine eigene Code Completion auf STRG+SPACE und schaltet die eingebaute ab. Wenn man das wieder ausschaltet, aber irgendwo das "Unterdrücke Standard Code Completion" noch eingeschaltet ist...
Kurzum: Sind Add-Ons/Plugins/Experten/Packages/Wieauchimmer drin? Vielleicht liegts an denen? |
AW: Code-Completion bei Delphi XE2 funktioniert nicht
Außer dem IDE Fix Pack ist eigentlich nichts installiert. Achja, CodeExplorer und GEXperts habe ich noch installiert, aber die Shortcuts habe ich eigentlich überprüft.
Wie gesagt, sporadisch und bei bestimmten Units funktioniert die Code-Completion ja auch. D.h. für mich, dass eigentlich kein Shortcut umdefiniert wurde. Kann es an AQTime liegen, welches ja mit XE2 installiert wird? Hier dachte ich habe ich auch schon mal gelesen, dass dies Schwierigkeiten macht. Jedoch, auch auf so ein Feature verzichte ich ungern. |
AW: Code-Completion bei Delphi XE2 funktioniert nicht
Starte mal die bds.exe mit -rDummy als Parameter. Das bewirkt, dass der Schlüssel Dummy in der Registry benutzt wird, so dass keine Addons usw. geladen werden. Dann lade nur was du absolut für das Projekt benötigst und teste es einmal so.
|
AW: Code-Completion bei Delphi XE2 funktioniert nicht
Vielen Dank für den Tipp! Hat leider auf die Schnelle nicht funktioniert. Bis ich alle 25 Packages mit allen Seiteneffekten wieder installiert kriege, dauert es noch!
Werde es aber trotzdem weiter probieren! |
AW: Code-Completion bei Delphi XE2 funktioniert nicht
AQTime hat bei mir in XE2 immer wieder dafür gesorgt, dass links der Strukturbaum leer war. Und wenn ich mich recht erinnere auch manchmal, dass die Code Completion nicht funktioniert hat!!!
Da ich keine Ahnung hatte, was es überhaupt ist, flog es raus und mein Lebensstandard verbesserte sich erheblich. Ob ich es jetzt bei XE4 auch irgendwo drin habe weiß ich nicht, wahrscheinlich nicht... |
AW: Code-Completion bei Delphi XE2 funktioniert nicht
Genau dafür ist der Start mit Dummy-Schlüssel gut: Um erst einmal herauszufinden, ob es am Projekt oder an einem Addon liegt. Liegt es an ersterem, wird sich so leicht nichts ändern lassen, geht es aber im Dummy-Schlüssel sollte es relativ einfach sein herauszufinden an welchem der dann nicht geladenen Addons es liegt.
|
AW: Code-Completion bei Delphi XE2 funktioniert nicht
Habe XE2 als Admin installiert,denne ging es.Jedenfalls bei mir...:)
|
AW: Code-Completion bei Delphi XE2 funktioniert nicht
Zitat:
|
AW: Code-Completion bei Delphi XE2 funktioniert nicht
Als was sollte man es sonst installieren, wenn nicht als Admin? Die RAD Studio-Installation braucht doch zwingend Administratorrechte.
|
AW: Code-Completion bei Delphi XE2 funktioniert nicht
Zitat:
|
AW: Code-Completion bei Delphi XE2 funktioniert nicht
Ich habe jetzt mal den Versuch gemacht, XE2 mit -rDummy zu starten. Nach einigem Hin und Her (deshalb hat die Antwort etwas gedauert), habe ich mein Projekt wieder zum Laufen gekriegt!
Ergebnis: Wie vorher, d.h. einige Units haben eine funktionierende Code-Completion, bei anderen geht gar nichts! Allerdings: AQTime war immer noch installiert! Ist wohl der nächste Schritt, dieses zu deinstallieren (eher ungern)! Kann es an der Größe des Projekts liegen (> 1.000.000 LOC)? Oder an der Komplexität, welche durch die vielen Packages ensteht (d.h. kann evtl. Delphi bestimmte Bezüge nicht mehr auflösen)? Hans. |
AW: Code-Completion bei Delphi XE2 funktioniert nicht
Zitat:
AQTime habe ich allerdings deaktiviert, weil es Abstürze und Fehler verursacht hat. |
AW: Code-Completion bei Delphi XE2 funktioniert nicht
Deaktiviert heißt deinstalliert, oder gibt es noch eine andere Möglichkeit?
|
AW: Code-Completion bei Delphi XE2 funktioniert nicht
Code:
Dort kannst du einfach das Package herausnehmen.
HKEY_CURRENT_USER\Software\Embarcadero\BDS\9.0\Known IDE Packages
|
AW: Code-Completion bei Delphi XE2 funktioniert nicht
Der Code nutzt aber nicht zufällig noch irgendwo die nicht mehr vorhandenen und nur durch Unit-Aliase verfügbaren WinProcs und WinTypes Units?
|
AW: Code-Completion bei Delphi XE2 funktioniert nicht
WinTypes und WinProcs habe ich wirklich noch in einer Drittkomponente gefunden, welche von einem Package eingebunden wurde. Habe ich durch Windows ersetzt, hat aber nichts gebracht.
|
AW: Code-Completion bei Delphi XE2 funktioniert nicht
Dann fallen mir nur noch zwei Möglichkeiten ein um dem Fehler auf die Spur zu kommen.
Delphi mit Delphi starten um die IDE zu debuggen. Vielleicht fliegt irgendwo eine Zugriffsverletzung (im Compiler). Unter "Start / Prozess laden..." bei "Lokal" unter "Prozess" $(BDS)\bin\bds.exe eintragen and "Laden" klicken (nicht wundern was alles an so Exception beim Laden der IDE auftreten) Mit ProcessMonitor nachschauen, ob irgend eine Unit nicht gefunden werden kann. |
AW: Code-Completion bei Delphi XE2 funktioniert nicht
Die einzige Fehlermeldung, welche ich gleich mal gekriegt habe war, dass die AQTime-bpl nicht geladen werden konnte. Diese habe ich daraufhin entfernt.
Danach lief Delphi im Debugger durch und ich konnte mein Projekt auch laden. Sobald ich die Code-Completion aufrufen wollte (CTRL-Space, oder CTRL-Shift-Space) sind diese Events auch angekommen. Es hat sich aber nichts weiter getan, d.h. keine Fehlermeldung im aufrufenden Delphi, aber auch keine Anzeige der Code-Completion. Über den ProcessMonitor habe ich nichts entdeckt, was irgendwie auf eine nicht gefunde Unit hindeuten könnte (muss aber zugeben, dass hier durchaus meine Grenzen erreicht sind). Beim Aufruf der Code-Completion kam eine Meldung die folgendermassen lautet: RegOpenKey HKLM\SOFTWARE\Wow6432Node\Microsoft\CTF\KnownClass es NAME NOT FOUND Kann sich hier was verbergen, was auf ein Problem hindeutet? Trotzdem schon mal vielen Dank für die Tipps! |
AW: Code-Completion bei Delphi XE2 funktioniert nicht
Ich glaube ich habe die Lösung des Problems gefunden:
Wir haben in unserem Projekt eine eigene Resource-Datei eingebunden, welche Verionsinformationen enthält. Diese Resource wurde in der DPK-Datei gleich an erster Stelle eingebunden:
Delphi-Quellcode:
Bei Packages, welche eine eigene Resource-Datei in der DPK-Datei einbinden, funktionierte die Code-Completion nicht. Wir haben nun eine eigene Unit gemacht, welche nur die Resource-Datei einbindet (also nicht mehr über die DPK), dann scheint es wieder zu funktionieren.
package MyPackage;
{$R MyPackage.res} {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} {$ALIGN 8} Hier der funktionierende Teil:
Delphi-Quellcode:
package MyPackage;
{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} {$ALIGN 8} Hat einiges an Zeit und Energie gekostet, das Problem zu lokalisieren. Vielen Dank allen für die Anregungen, Hans. |
AW: Code-Completion bei Delphi XE2 funktioniert nicht
Danke für den Tipp, hab schon länger eine Lösung für das Problem gesucht. Lag auch bei mir an der *.res Datei.
|
AW: Code-Completion bei Delphi XE2 funktioniert nicht
Danke für den Tipp. Bei mir war nicht direkt die *.res Datei aber dank der Diskussion konnte ich mein Problem finden.
Es ist DELPHI XE7 und plötzlich hat Code-Completion aufgehört zu funktionieren. Bei mir war die DPR Datei. Ich hatte ein Paar Zeilen in "Uses" uses ..........., ..........., {$ifdef XXXXX} ......, .........', .........., {$endif } ............, ............; Damit funktionierte Code-Completion nicht. $ifdef und $endif Zeilen auskommentiert und Code-Completion läuft. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:57 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz