JTLwawiExtern.dll. Im Beispielprojekt können Sie sich das gesamte Projekt anschauen.
DLL auswählen
Klicken Sie nun auf der linken Seite auf Durchsuchen und anschließend auf den Durchsuchen-Button unten am Dialog-Fensterrand.Suchen Sie nun die
JTLwawiExtern.dll in dem JTL-Software Verzeichnis. Klicken Sie anschließend auf OK.- Standardpfad (x64-System):
C:\Program Files (x86)\JTL-Software - Standardpfad (x86-System):
C:\Program Files\JTL-Software
Lokale Kopie deaktivieren
Nun müssen Sie in den Eigenschaften des Verweis für die
JTLwawiExtern.dll die Lokale Kopie auf False setzen, was standardmäßig auf True gesetzt ist.Dies ist für die nächsten Schritte notwendig, da nur über das Einbinden des Verweis nicht alle von der JTLwawiExtern.dll benötigten Verweise nachgeladen werden können, da das Projekt nur im Projektverzeichnis oder im Global Assembly Cache nach den DLLs sucht und nicht dort, wo sich die DLL lokal auf dem Rechner befindet.Installationspfad ermitteln
Zusätzlich muss die DLL dynamisch zur Laufzeit eingebunden werden. Dazu müssen Sie die folgenden Methoden verwenden, welche die Registry nach dem Installationspfad der Wawi durchsuchen.Die Methode
FindInstallLocation() übergibt der Methode FindUninstallSubkey() den Basis-Registry-Zweig für 32-Bit oder 64-Bit Systeme.In der Methode FindUninstallSubkey() wird im übergebenen Registryzweig nach dem Pfad zur Installation der Wawi gesucht und falls dieser gefunden wird, wird er zurückgegeben.Versionsprüfung
Des Weiteren sollten Sie prüfen, ob die Versionsnummer der lokal gefundenen
JTLwawiExtern.dll mindestens genau so groß ist, wie die der über Verweise eingebundenen JTLwawiExtern.dll. Dies ist notwendig, da man nicht davon ausgehen kann, dass in einer kleineren Version die gleichen Methoden enthalten sind.Allerdings muss die Version der über Verweise eingebundenen JTLwawiExtern.dll per Hand angegeben werden. Die Version findet man unter den Eigenschaften der eingebundenen DLL.Resolver abonnieren
Mittels der folgenden Programmzeile müssen Sie ein Event für den Resolver abonnieren, welches es ermöglicht die benötigten DLLs zur Laufzeit nachzuladen.Das Event
LoadAssemblys() lädt dann aus dem Installationspfad der Wawi, hier im Feld _wawiPath gespeichert, die benötigten DLLs nach, sofern diese existieren.using-Directive hinzufügen
Nun müssen Sie in Ihrer Klasse die using-Directive für die
JTLwawiExtern.dll hinzufügen.