Warum ein
Package und nicht
DLL?
Und dein Projekt (EXE) ist ebenfalls mit Laufzeit-Packages kompiliert?
Mindestens die
RTL, welche auch in deinem
Package als Require drin sein sollte.
Ansonsten weiß ich nicht, wie das mit SharedMem bei Packages aussieht/funktioniert,
gegenüber der notwendigkeit bei DLLs, welche sich durch die Nutzung des "String" ergibt.
(alles nicht nötig, wenn gegen die
rtl*.bpl kompiliert wurde)
Zitat:
automatisch dependcies
rtl.dcp ?
Zitat:
installieren in das
IDE System
Ist das Überhaupt nötig?
* DesignTimePackages -> Funktionen/Komponenten/..., welche innerhalb der
IDE benutzt werden, sowie z.B. als Komponente im FormDesigner drauf sollen.
* RuntimePackages -> Funktionen welche in eigenen Programmen genutzt werden
* oder Beides zusammen
Ja, Delphi 7 hat noch mit Vielem das System zugemüllt, und z.B. seine eigenen DesignTime-/Runtime-Packages in System32 geworfen.
Etwas neuere Delphis lassen den Müll im eigenen Verzeichnis und bieten dir auch ein "Redist" Verzeichnis, wo die Packages drin liegen,
welche du (tweilweise) mit deinem Programm ausliefern muß, wenn du mit Laufzeitpackages kompiliert hast.
C:\Program Files (x86)\Embarcadero\Studio\22.0\Redist\
win32 (k.A. ob Delphi 7 auch ein "Redist"-Verzeichnis hatte, oder man es sich selbst aus System32 raussuchen muß)
eben jene schon genannte rtp70.bpl mußt du deinem Programm mitgeben.
PS:
Originale Fehlermeldungen blind durch igendeinen festen Text zu ersetzen, ist nie eine gute Idee.
RaiseLastOSError oder, als zusatz zu deinem Text zumindestens
SysErrorMessage(GetLastError)
.
PSS:
https://www.delphipraxis.net/207151-...s-sandbox.html
https://www.embarcadero.com/de/products/delphi/starter