AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Einbinden von Units unterbinden

Ein Thema von EWeiss · begonnen am 19. Sep 2018 · letzter Beitrag vom 19. Sep 2018
Antwort Antwort
Seite 1 von 2  1 2      
EWeiss
(Gast)

n/a Beiträge
 
#1

AW: Einbinden von Units unterbinden

  Alt 19. Sep 2018, 08:28
Also unter 10.2 Tokyo (gerade getestet) haben die Suchpfade im Projekt Vorrang vor den globalen Suchpfaden.
Reden wir aneinander vorbei?
OK dann ein Shot!

Es soll die DirectDraw .pas aus dem Suchpfad (..\KVideoPlayer64\DirectX9) verwendet werden NICHT die WinApi.DirectDraw!
Bedenke DirectDraw.pas wurde nicht zum Projekt addiert nur über den vor eingestellten Suchpfad.
Wenn ich nun bei DirectDraw (Menu.. Datei beim Cursor öffnen) anklicke wird Winapi.DirectDraw geöffnet und das ist definitiv falsch!

gruss

Geändert von EWeiss (11. Jul 2019 um 15:53 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.771 Beiträge
 
Delphi 12 Athens
 
#2

AW: Einbinden von Units unterbinden

  Alt 19. Sep 2018, 08:37
Kann es sein, daß das Problem nur dann auftritt, wenn bei den Compiler-Optionen das "Mit Debug-DCUs" aktiviert ist? In dem Fall werden die Debug-DCU Pfade womöglich vor die Projekt-Suchpfade gestellt.

Ich habe mal bei StackOverflow etwas zu dem Thema geschrieben. Ist zwar schon eine Weile her, aber ist womöglich immer noch relevant: Managing very large codebases in Delphi using a Library of Debug and Regular DCUs I built myself

Es ist allerdings auch so, daß nicht die Delphi Source-Pfade (z.B. rtl\win) im Suchpfad stehen, sondern nur das der Plattform entsprechende lib-Verzeichnis - zumindest in einer Standard-Installation ist das so.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#3

AW: Einbinden von Units unterbinden

  Alt 19. Sep 2018, 08:42
Zitat:
"Mit Debug-DCUs" aktiviert ist?
Ist false.. bei Release und Debug
Also nach meinem Verständnis wenn man schon einen Suchpfad angibt dann sollte dieser Vorrang vor den von Emba haben.
Ansonsten macht es keinen Sinn überhaupt Suchpfade anzulegen..

PS:
Ich habe auch schon die Reihenfolge geändert also
den Pfad (..\KVideoPlayer64\DirectX9) an erster stelle, ändert aber nichts an dem Problem.

Sorry.. zum Schluss noch es steht DirectDraw als unit in den Uses nicht Winapi.DirectDraw

gruss

Geändert von EWeiss (11. Jul 2019 um 15:53 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.771 Beiträge
 
Delphi 12 Athens
 
#4

AW: Einbinden von Units unterbinden

  Alt 19. Sep 2018, 08:50
Also nach meinem Verständnis wenn man schon einen Suchpfad angibt dann sollte dieser Vorrang vor den von Emba haben.
Das sollte eigentlich auch so sein.

Kannst du mal aus dem Meldungsfenster die Befehlszeile des Compilers hier zeigen. Dort sollte ja der tatsächlich verwendete Suchpfad zu erkennen sein.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#5

AW: Einbinden von Units unterbinden

  Alt 19. Sep 2018, 08:54
Also nach meinem Verständnis wenn man schon einen Suchpfad angibt dann sollte dieser Vorrang vor den von Emba haben.
Das sollte eigentlich auch so sein.

Kannst du mal aus dem Meldungsfenster die Befehlszeile des Compilers hier zeigen. Dort sollte ja der tatsächlich verwendete Suchpfad zu erkennen sein.
Ja über PN das sind private Daten..

Hier ein kleiner Ausschnitt.
Zitat:
release\DE ";..\KVideoPlayer64\DirectX9;..\KVideoPlayer64 \EVM RPlayer;..\KVideoPlayer64\DSPack
PS:
Anderes Problem..
Uses DirectShow9, GDIPAPI, GDIPOBJ;

DirectShow9 öffnet Winapi.DirectShow9
GDIPAPI öffnet Winapi.GDIPAPI
GDIPOBJ öffnet die korrekte Unit.

Was soll das?

gruss

Geändert von EWeiss (19. Sep 2018 um 09:10 Uhr)
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.599 Beiträge
 
Delphi 7 Professional
 
#6

AW: Einbinden von Units unterbinden

  Alt 19. Sep 2018, 09:12
Hier ein kleiner Ausschnitt.
Zitat:
release\DE ";..\KVideoPlayer64\DirectX9;..\KVideoPlayer64 \EVM RPlayer;..\KVideoPlayer64\DSPack
Wenn ich solche Probleme habe, sorge ich dafür, dass "meine" Pfade in dieser Liste am Anfang zugefügt werden und nicht, wie von der IDE üblich, ans Ende. Man muss dann halt, wenn man über die IDE Pfade hinzufügt, diese nochmal in der Eingabe "rumkopieren". Meist klappt das dann.
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#7

AW: Einbinden von Units unterbinden

  Alt 19. Sep 2018, 09:15
Hier ein kleiner Ausschnitt.
Zitat:
release\DE ";..\KVideoPlayer64\DirectX9;..\KVideoPlayer64 \EVM RPlayer;..\KVideoPlayer64\DSPack
Wenn ich solche Probleme habe, sorge ich dafür, dass "meine" Pfade in dieser Liste am Anfang zugefügt werden und nicht, wie von der IDE üblich, ans Ende. Man muss dann halt, wenn man über die IDE Pfade hinzufügt, diese nochmal in der Eingabe "rumkopieren". Meist klappt das dann.
Es geht nicht um einen Workaround (den suche ich nicht) es MUSS auf normalem Wege funktionieren!
bzw. Den habe ich ja wenn ich die Units direkt zum Projekt addiere aber das ist NICHT der sinn der Sache.

Siehe! Nochmals..

Anderes Problem..
Uses DirectShow9, GDIPAPI, GDIPOBJ;

DirectShow9 öffnet Winapi.DirectShow9
GDIPAPI öffnet Winapi.GDIPAPI
GDIPOBJ öffnet die korrekte Unit.

gruss

Geändert von EWeiss (19. Sep 2018 um 09:17 Uhr)
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.277 Beiträge
 
Delphi 10.4 Sydney
 
#8

AW: Einbinden von Units unterbinden

  Alt 19. Sep 2018, 09:17
Hallo,
Zitat:
Bedenke DirectDraw.pas wurde nicht zum Projekt addiert nur über den vor eingestellten Suchpfad.
das meinte ich aber.
Die Pfade, die hinter der Pas in der DPR stehen, haben meines Wissens immer Vorrang.
Ist nicht schön, aber was solls.
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.771 Beiträge
 
Delphi 12 Athens
 
#9

AW: Einbinden von Units unterbinden

  Alt 19. Sep 2018, 09:27
Ja über PN das sind private Daten..

Hier ein kleiner Ausschnitt.
Zitat:
release\DE ";..\KVideoPlayer64\DirectX9;..\KVideoPlayer64 \EVM RPlayer;..\KVideoPlayer64\DSPack
Die Befehlszeile entspricht in etwa dem, was ich in der StackOverflow Antwort geschrieben habe. Hier ist es die Spracheinstellung DE, die für eine falsche Sortierung der Suchpfade sorgt. Die Änderung der CodeGear.Delphi.Targets gemäß der dortigen Beschreibung sollte das Problem lösen.

Du kannst das vorab ja mal ausprobieren, indem du in Delphi unter Tools - Umgebungsoptionen - Umgebungsvariablen die LANDIR Variable überschreibst und statt des DE einen Leerstring einträgst. Damit sollten die sprachabhängigen Suchpfade nicht mehr in der Befehlszeile auftauchen. Allerdings verwendet dein Programm dann halt die englischen Ressourcen, aber es ist ja nur zum Testen. Das ändern der Targets-Datei löst das Problem dann dauerhaft.

Wer mag, kann ja für diesen QP-Eintrag voten: Wrong order of search pathes presented to compiler
Vielleicht muss ich dann irgendwann diese Anpassung nicht bei jeder Delphi-Installation wiederholen.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#10

AW: Einbinden von Units unterbinden

  Alt 19. Sep 2018, 09:30
Ja über PN das sind private Daten..

Hier ein kleiner Ausschnitt.
Zitat:
release\DE ";..\KVideoPlayer64\DirectX9;..\KVideoPlayer64 \EVM RPlayer;..\KVideoPlayer64\DSPack
Die Befehlszeile entspricht in etwa dem, was ich in der StackOverflow Antwort geschrieben habe. Hier ist es die Spracheinstellung DE, die für eine falsche Sortierung der Suchpfade sorgt. Die Änderung der CodeGear.Delphi.Targets gemäß der dortigen Beschreibung sollte das Problem lösen.

Du kannst das vorab ja mal ausprobieren, indem du in Delphi unter Tools - Umgebungsoptionen - Umgebungsvariablen die LANDIR Variable überschreibst und statt des DE einen Leerstring einträgst. Damit sollten die sprachabhängigen Suchpfade nicht mehr in der Befehlszeile auftauchen. Allerdings verwendet dein Programm dann halt die englischen Ressourcen, aber es ist ja nur zum Testen. Das ändern der Targets-Datei löst das Problem dann dauerhaft.

Wer mag, kann ja für diesen QP-Eintrag voten: Wrong order of search pathes presented to compiler
Vielleicht muss ich dann irgendwann diese Anpassung nicht bei jeder Delphi-Installation wiederholen.
Uwe Danke für den Tip.

Ich habe es damit behoben das ich die Dateien zum Projekt addiert habe.
Es geht aber nicht um einen Workaround sondern darum das es ein Fehler in der IDE ist..
Ich denke das sollte gemeldet werden.. ich kann es leider nicht!

gruss

Geändert von EWeiss (19. Sep 2018 um 09:35 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 11:25 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