Das Arbeitsverzeichnis ändert sich beim Opendialog? Gut zu wissen.
Sollte aber nicht die Ursache sein, da ich alle Pfade, auch die der DLLs, beim App-Start auf absolute Pfade setze und gleich danach überprüfe ob alle meine Dlls sich in ihrem Unterverzeichnis befinden. Sollte eine
DLL fehlen, startet das Programm nicht.
Es startet aber, nur das Laden der
DLL schlägt fehl mit ERROR_MOD_NOT_FOUND.
Wohl gemerkt nur, wenn ich vor dem Erstellen der
DLL die DCUs
nicht lösche.
Eigenartigerweise tritt das Problem auch nur auf, wenn ich das Programm
nicht aus der
IDE starte.
Läuft das Programm (die Exe) in der
IDE funktioniert das Laden. Starte ich gleich danach die das EXE-File schlägt das Laden fehl.
Das Beenden der "
Dll-Projket-
IDE" macht auch keinen Unterschied.
Lösche ich wieder alle DCUs, erstelle die
DLL neu, beende alle IDEs, starte die EXE, läuft die Anwendung wieder ohne Probleme.
Ich habe nun alle
Unit-Ausgabe-Verzeichnisse auf ein Verzeichnis gesetzt, welches sich nicht im Bibliotheks-Path oder im Suche-Path der
IDE/Projekte befindet. So klappt das erst mal. Okay, das Kompilieren dauert nun ewig, aber es kommt was funktionierendes dabei raus.
Das kann aber nicht die Lösung sein.