![]() |
Mehrfachstart der Delphi IDE verhindern
Gibt es eine Möglichkeit den Mehrfachstart der Delphi-IDE zur verhindern?
Ich würde bestimmte Projekte z.T. gern von Extern in Delphi laden, aber möchte nicht, dass die IDE noch mal startet, sondern dass das aktuelle Projekt geschlossen wird und statt dessen das geladen wird, welches man von extern (z.B. per Shellexecute) aufgerufen hat. |
AW: Mehrfachstart der Delphi IDE verhindern
Normalerweise funktioniert das zumindest mit Doppelklick aus dem Explorer heraus.
Das alte Projekt wird zwar nicht entfernt aber das neue addiert. Bei mir mit D2010. (Win7) Was ich aber festgestellt habe unter Win10 kann ich nicht einmal mit Doppelklick eine andere Unit in der IDE einladen. Ob das jetzt an der Comunity Edition liegt oder generell nicht funktioniert, oder es an Win10 liegt habe ich noch nicht herausgefunden. Erst wenn ich das alte Projekt also die IDE vorher schließe kann ich mit Doppelklick eine andere Unit öffnen. Wie man das alte Projekt jedoch vorher entfernt kann ich leider auch nicht sagen. EDIT: Nur wenn ich eine Projektgruppe mit Doppelklick öffne wird das alte Projekt vorher geschlossen. gruss |
AW: Mehrfachstart der Delphi IDE verhindern
Interessant, zumindest also wenn man eine Projektgruppe geöffnet hat, kann man z.B. per Drag und Drop eine andere Projektgruppe auf Delphi ziehen und dann wird die alte Projektgruppe geschlossen und die neue geöffnet (gerade mal mit XE7 probiert).
|
AW: Mehrfachstart der Delphi IDE verhindern
Zitat:
Vielleicht kannst du der IDE ja vorgaukeln das dein über Shellexecute gestartetes Projekt eine Projektgruppe ist. Aber wie gesagt kann es nicht testen bei mir unter Win10 geht da gar nichts vernünftig. gruss |
AW: Mehrfachstart der Delphi IDE verhindern
Nein, per ShellExecute startet dann ein neues Projekt (zumindest hier gerade mit XE7 oder Delphi 10.2).
Aber so eine richtige Lösung wäre das auch mit mit den Projektgruppen. Will ich da jetzt nicht extra anlegen (habe ja zig dutzende normale Projekte). |
AW: Mehrfachstart der Delphi IDE verhindern
Zitat:
Delphi-Quellcode:
Bei älteren Delphiversionen hat es noch einen Unterschied gemacht, ob man die .dpr oder die .dproj benutzt hat, (es wurde das Projekt einzeln geöffnet oder in die aktive Projektgruppe gesetzt) bei Delphi 10.2 wird das Projekt immer in die Projektgruppe hinzugefügt.
ShellExecute(Handle, 'open', 'J:\Embarcadero\Studio\Projekte\Project1.dproj', '', '', SW_SHOWNORMAL);
// Vielleicht wäre es erfolgversprechender ein IDE Addon zu benutzen und diesem Befehle von außen zu geben... |
AW: Mehrfachstart der Delphi IDE verhindern
Eigentlich habe ich immer nur das umgekehrte Problem: Ich will ein neues Projekt in einer neuen IDE-Instanz öffnen, aber es landet als zweites (n-tes) Projekt in der existierenden Projektgruppe.
Es gibt im Prinzip zwei Arten, die IDE zu starten:
Ersteres startet zuverlässig eine neue Instanz. BDSLauncher versucht anscheinen clever zu sein und öffnet fast immer das Projekt in einer bereits laufenden Instanz. BDSLauncher wird auch vom Installer als Standardprogramm zum Öffnen von .dpr und .drpoj eingetragen. |
AW: Mehrfachstart der Delphi IDE verhindern
Gerade hier mal schnell getestet, leider startet auch bdslauncher.exe eine zweite Instanz... (also mit .dpr)
Außerdem startet hier BDSLauncher nicht zuverlässig, zumindest, wenn auch eine andere Delphi-Version läuft. |
AW: Mehrfachstart der Delphi IDE verhindern
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
Zur Erläuterung: Bin gerade dabei meine eigene Projektverwaltung etwas aufzubohren, ich möchte letztlich jedes Delphi, dass ich gerade auf einem PC habe, so nutzen können: Projekt auswählen und dann entscheiden, welches Delphi das Projekt öffnet (siehe anliegenden Screenshot). |
AW: Mehrfachstart der Delphi IDE verhindern
Liste der Anhänge anzeigen (Anzahl: 1)
Na, ich habe mir mal jetzt eine Notlösung zusammengebastelt. Habe mich an ein Uralt-Tools von mir zum Senden von Keystrokes erinnert. Da habe ich mir für jede IDE ein Makro geschrieben. Mein Pascal Project Manager Programm prüft, ob die gewünschte IDE schon läuft. Falls Ja, wird diese nicht noch mal per ShellExecute gestartet, statt dessen wird per ShellExecute mein MakroHexe-Programm gestartet, welches als Parameter1 den Namen des Passenden Macros erhält und als zweiten Parameter die zu öffnenden Projekt-Datei (siehe anl. Screenshot).
Nicht schön, funktioniert aber.... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:29 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