Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Unit ShareMem nur einbinden, wenn BorlndMM.dll existiert (https://www.delphipraxis.net/57431-unit-sharemem-nur-einbinden-wenn-borlndmm-dll-existiert.html)

HeikoAdams 21. Nov 2005 10:36


Unit ShareMem nur einbinden, wenn BorlndMM.dll existiert
 
Hallo,
gibt es eine Möglichkeit, die Unit ShareMem so in das Programm einzubinden, das die Unit nur genutzt wird, wenn die DLL vorhanden ist?

Gruß

Robert Marquardt 21. Nov 2005 10:47

Re: Unit ShareMem nur einbinden, wenn BorlndMM.dll existiert
 
Nimm doch einen alternativen Memorymanager der keine DLL braucht.
FastMM http://sourceforge.net/projects/fastmm wird in D2006 enthalten sein.

himitsu 21. Nov 2005 10:49

Re: Unit ShareMem nur einbinden, wenn BorlndMM.dll existiert
 
Nein, diese Möglichkeit gibt es nicht.

Aber du könntest dir da selber was schreiben, wenn du an den Quellcode dieser Unit rankommst.

Diese Unit ist ja im Grunde genommen nur eine Schnittestelle zur DLL und es wäre möglich vorher zu testen, ob diese DLL existiert, bevor man die Verknüpfungen dahin erstellt.


Aber imho ist dieses doch völlig Sinnlos, denn du brauchst dise Unit ja nur einbinden wenn du eine anderes Modul (z.B. DLL) lädst, welches diese auch verwendet, somit muß diese ja vorhanden sein, denn hone läuft nichts.


[add]
Vergiß aber nicht die SharedMemoryFunktion in FastMM zu aktivieren ... wenn ich mich richtig erinnere, dann ist dieses ja standardmäßig abgeschaltet.


[add2]
Zitat:

FastMM wird in D2006 enthalten sein.
heißt das, die schmeißen ihr BorlandMM dann raus?

Robert Marquardt 21. Nov 2005 11:49

Re: Unit ShareMem nur einbinden, wenn BorlndMM.dll existiert
 
Zitat:

Zitat von himitsu
heißt das, die schmeißen ihr BorlandMM dann raus?

Ja und nein. FastMM braucht keine BorlndMM.dll. Es genuegt wenn Hauptprogramm und DLL FastMM benutzen.
Die DLL muss aber bei Delphi immer noch dabei sein, damit aeltere Programme kein Problem bekommen. Die DLL wird aber intern FastMM benutzen.

himitsu 21. Nov 2005 14:14

Re: Unit ShareMem nur einbinden, wenn BorlndMM.dll existiert
 
OK, ich dachte schon die ersetzen das vollständig.

Das FastMM die BorlndMM.dll nicht benötigt war mir schon klar ... darum hatte ich ja auch gefrag, ob jetzt ShareMem aus D2006 rausgefolgen ist.
Und ich finde es ja auch ganz praktisch, daß FastMM keine weitere DLL mehr benötigt, auch wenn man mit FastMM eine ErsatzDLL für die BorlndMM.dll erstellen kann. (womit dann die eigentliche BorlandMM.dll nicht mehr nötig wäre)

PS: FastXMM - Speicher Manager
Hier im Forum suchenFastMM OR FastXMM OR UCC

Zitat:

Die DLL wird aber intern FastMM benutzen.
Also haben sie die BorlandMM.dll doch rausgeschmissen und durch die ErsatzDLL mit FastMM ersetzt?
Wobei ich jetzt mal hoffe, daß Pierre die kleinen Fehlerchen in seiner ErsatzDLL behoben hat :?

Robert Marquardt 21. Nov 2005 14:27

Re: Unit ShareMem nur einbinden, wenn BorlndMM.dll existiert
 
ShareMem wird nicht mehr gebraucht werden, aber ist bestimmt noch dabei.

HeikoAdams 21. Nov 2005 18:20

Re: Unit ShareMem nur einbinden, wenn BorlndMM.dll existiert
 
Zitat:

Zitat von Robert Marquardt
ShareMem wird nicht mehr gebraucht werden, aber ist bestimmt noch dabei.

Das Zauberwort hierfür heißt Abwärtskompatibilität :wink:


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:36 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz