Gilt ab List & Label 8
Oftmals kann es sinnvoll sein, die List & Label DLLs erst zur Laufzeit dann dynamisch zu laden, wenn sie wirklich benötigt werden (geringerer Speicherverbrauch, schnellere Programmstartupzeit, etc.). Um dies möglichst komfortabel zu gestalten, gibt es für C/C++ und Delphi spezielle Deklarationsdateien, welche dies ermöglichen und in Ihrer Installation enthalten sind.Um Ihren Sourcecode auf ein dynamisches Laden von List & Label umzustellen, sind nur ein paar wenige, einfache Schritte notwendig (ersetzen Sie dabei jeweils "??" durch die entsprechende List & Label Hauptversionsnummer):
- Ersetzen Sie alle Stellen, an denen Sie "cmbtll??.h" includen durch "cmbtll??.hx".
- In einem Ihrer Sourcecodemodule platzieren Sie zusätzlich noch folgende Zeilen:
#undef _LL??_H
#define IMPLEMENTATION
#include "cmbtll??.hx"
#undef IMPLEMENTATION
- Nun stehen die Funktionen LL??xLoad() und LL??xUnload() zusätzlich zur Verfügung. Verwenden Sie diese um List & Label dynamisch zu laden.
- Entfernen Sie die cmll??.lib aus Ihren Linker-Einstellungen.
Nachfolgend nochmals der komplette dafür relevante Code:
// ...
#include "cmbtll??.hx"
// ...
#undef _LL??_H
#define IMPLEMENTATION
#include "cmbtll??.hx"
#undef IMPLEMENTATION
// ...
if (LL??xLoad() < 0)
{
MessageBox("Fehler: LL?? konnte nicht geladen werden!");
return;
}
// ... normal List & Label operation
LL??xUnload();
Hinweis: Für Delphi gehen Sie genau analog vor und verwenden die .PX Datei.
Wichtig: Das dynamische Laden über den oben vorgestellten Mechanismus funktioniert nur, wenn die List & Label DLL Schnittstelle verwendet wird. Ist eine Komponente im Einsatz, so erfolgt das Laden bereits durch den Komponenten-Mechanismus automatisch, hierauf haben Sie auch mit o.g. Methode keinen Einfluss.
IDKBTD000594 KBTD000594