Kaufmännische Software für Handel, Handwerk und Produktionsbetriebe
Das Installer-Objekt erlaubt es, extern erstellte Anwendungen als
Plugin zu erstellen. Diese können vom Anwender über den
Plugin-Manager
der
EULANDA-Warenwirtschaft mit einem Klick installiert werden. Ein Plugin
besteht aus einer einzigen Datei mit der Dateiendung .cninst. Diese ist
komprimiert und enthält neben einer Anweisungsdatei auch alle
notwendigen Module oder auch Binärdateien.
Der Entwickler des Plugins hat Einfluss auf den Deinstallations- sowie den Update-Prozess seines Plugins. Neben der Möglichkeit die integrierte Programmierumgebung iScript zu verwenden, lassen sich über den Installer aber auch OCXe, Systemtreiber sowie beliebige andere Programme installieren.
Zunächst erstellt man die notwendigen Programmmodule. Das können
SQL-Prozeduren, SQL-Scripts die Tabellen oder Felder anlegen, VBScript,
Berichte oder Registry-Abschnitte. Bildschirmmasken lassen sich über VBScript mit
Hilfe des Objekts MultiDlg
erstellen und einbinden.
Es lassen sich eigene Infosysteme, Kurzinfos,
HTML-Verwaltungsseiten, Spracherweiterungen und andere Dinge als Plugin
erstellen.
Über eine einfache ASCII-Steuerdatei lässt sich das Plugin
in ein Installations-Paket umwandeln. Die Steuerdatei wird in diesem Prozess in eine
flexible XML-Struktur gewandelt die den Aufbau der eulanda.XML-Datei
hat. Diese wird mit allen Modulen und Binärdateien zu einer
komprimierten .cninst
-Datei zusammengefügt - dem Installations-Paket.
Der Endkunde kann ein solches Plugins in seiner EULANDA-Warenwirtschaft über den Plugin
Manager
installieren, der sich in der Schnellstartleiste im Abschnitt
Systemverwaltung
befindet. Ist EULANDA® geöffnet, so kann er zum
Beispiel ein Plugin aus dem EULANDA-Anwenderforum mit einem Klick direkt
installieren, indem er im Webbrowser beim Anklicken des Plugins die
Option ausführen verwendet.
Jedes Modul hat zur eindeutigen Identifizierung eine UID, diese Nummer kann über
eine EULANDA-API und iScript generiert werden; sie ist zufällig. Ein Beispiel
finden Sie im Abschnitt UID erzeugen. Sie hat den typischen in
Windows bekannten Aufbau wie: {38D2B9EA-840A-4A9D-B7EB-8574904CDE6C}
und muss für
das Modul immer identisch sein. Das Gleiche gilt für die UID der einzelnen
Optionen eines Moduls. Somit ist es möglich, bei einem Update bereits
installierte Optionen zu identifizieren, aber auch neue Optionen in ein
Installationspaket hinzuzufügen. Der Software-Hersteller des Plugins hat
ebenfalls eine eindeutige UID, die jedoch bei der EULANDA Software GmbH
beantragt werden muss.
Der Plugin-Manager erlaubt das Installieren, Deinstallieren, Aktualisieren und
Ändern von Optionen sowie das Journaling von Aktionen.
Eine Plugin-Installation kann Abhängigkeiten definieren, also eine bestimmte
Software oder ein anderes Plugin voraussetzen. Zusätzlich ist eine freie Prüfung
durch ein VBScript-Action möglich, und bei negativem Befund kann dieses Script eine
Installation verhindern.
Beim Deinstallieren wird geprüft, ob das Plugin von einem anderen Plugin vorausgesetzt wird. Ist dies der Fall wird eine Deinstallation verhindert.
Jedes Plugin besteht in der Installation aus mindestens einer Option
die zwingend vorhanden sein muss, also die Eigenschaft
REQUIRED=1
besitzen muss. Weitere
Optionen können vorhanden sein, die der Anwender dann bei der Installation an-
oder abwählen kann. Ein Default kann über die Eigenschaft
DEFAULT=1
gesetzt
werden. Jede Option wiederum kann verschiedene Steps (=Schritte) enthalten.
Zur eindeutigen Klassifizierung hat jede Option eine UID (=Unique-Identifier). Diese weltweit eindeutige Nummer kann über EULANDA-API erzeugt werden. Beim Ausführen eines Paketes wird geprüft ob dieses Modul oder diese Option bereits aktiv ist um diese dann zu aktualisieren bzw. neu anzulegen. Ein neueres Plugin kann durchaus zusätzliche Optionen enthalten.
Eine Option wiederum verfügt über Installations-Schritte. Diese sind
untergliedert in Installations- und Deinstallations-Schritte. Wird also ein
Modul deinstalliert oder eine Option deaktiviert, so werden alle Schritte des
Deinstallations-Bereichs ausgeführt, beim Installieren oder Updaten entsprechend
die Schritte des Installations-Bereichs
Jeder Schritt kann einer unterschiedlichen Befehlsklasse angehören. Es können
SQL-, Batch, Registry- VBScript- oder XML-Befehle sein. Die Anzahl von Schritten
einer Option ist nicht begrenzt.
Jedes Modul kann einen BINARY
-Abschnitt enthalten. Dieser beinhaltet beliebige
eingebettete Dateien. Das können OCX-Dateien, Treiber, Hilfsprogramme,
Fernwartmodule usw. sein.
Beim Installieren des Moduls werden diese Dateien in das Temp
-Verzeichnis des
PCs entpackt und können von eingebetteten Batchdateien oder VBScript-Code
ausgeführt werden.
Das Entpacken der Dateien erfolgt auch jeweils beim Deinstallieren, Updaten oder
Ändern von Optionen. Hierdurch ist ein Zugriff auf diese Hilfsprogramme
jederzeit möglich. Enthält ein Schritt eine Batch-Datei, so wird diese
Batch-Datei ebenfalls im Temp
-Verzeichnis entpackt, so dass der Batch
immer zur
Verfügung steht.
Ein besonderes VBScript kann dem Modul-Abschnitt in der Eigenschaft
ONINSTALL
zugeordnet werden. Über das vorinstanzierte Objekt Installer
kann über Installer.Abort=1
eine Installation unterbunden werden.
Jeder Abschnitt MODUL
wird in der EULANDA-Datenbank in die Tabelle cnModules
gespeichert. Bei Options-Änderungen, Deinstallation und Updates muss das
Installations-Paket (= .cninst
-Datei) nicht mehr vorhanden sein, denn es wird
direkt aus der SQL-Tabelle rekonstruiert.
Die Steuerdatei ist eine Text-Datei und stellt eine vereinfachte Möglichkeit dar, die am Ende notwendige XML-Datei zu erzeugen. Der Aufbau entspricht einer normalen INI-Datei, enthält also verschiedenen Abschnitten mit Werten.
Die .cninst
-Installationsdatei ist eine umbenannte ZIP-Datei.
Sie enthält
mindestens eine Datei mit dem Namen eulanda.xml
. Darüber hinaus
können beliebige andere Zusatz-Dateien darin enthalten
sein.
Beim Installationsprozess werden alle Dateien die sich in der .cninst
-Datei
befinden in das temporäre Windows-Verzeichnis des PCs entpackt.
Dadurch kann die Installationsdatei auch als Container für eigene
Dateien verwendet werden.
Eine weitere Möglichkeit Zusatz-Dateien zu transportieren, besteht
darin, diese eingebettet in der eulanda.xml
-Datei zu übertragen. Diese
Dateien aus dem Abschnitt BINARY
werden ebenfalls beim Installieren in
das Temp
-Verzeichnis des Windows entpackt. Der Unterschied zu dieser
Methode ist, dass die eingebetteten Dateien auch in die
Installationsdatenbank gespeichert werden und auch bei Updates,
Deinstallation und Änderungen von Optionen zur Verfügung stehen, während
die anderen Dateien nicht gesondert
archiviert werden.
Das bedeutet, dass besonders große Dateien, die nur für die Installation
benötigt werden, direkt in der cninst
-Datei abgelegt werden können, und alle
verbleibenden Dateien, die auch mit dem Plugin in der
Installationsdatenbank archiviert werden sollen, eingebettet werden
können.
Die eulanda.xml
-Datei ist ein Standard innerhalb
von EULANDA und wird nicht vom Installer benutzt sondern auch
vom HTML-Mailer als Archivformat oder von der optionalen XML-Import- und
Exportschnittstelle.
Die eulanda.xml
-Datei besitzt den Hauptknoten EULANDA
und
speziell für die Installation von Plugins einen Knoten MODULLISTE
und darunter für jedes enthaltene Plugin, einen Knoten MODUL
.
Normalerweise enthält eine cninst
-Datei nur ein Plugin mit den
verschiedenen Optionen und Steps. Es ist jedoch denkbar, dass man
verschiedene Installationen in einer Datei zusammenführen möchte, so dass es
entsprechend verschiedene unabhängige Abschnitte MODUL
geben
kann. Eingeleitet wird die XML-Datei stets durch den Knoten METADATA
,
der die Versionsnummer und andere Grundinformationen zur gesamten
XML-Datei enthält.
Zur Erstellung dieser Datei gibt es den Package-Builder. Er erzeugt eine korrekte XML-Datei anhand einer einfachen ASCII-Steuerdatei.
Rumpfaufbau einer eulanda.xml-Datei
<EULANDA>
<METADATA>
...
</METADATA>
<MODULLISTE>
<MODUL>
...
</MODUL>
</MODULLISTE>
</EULANDA
Der Name der Steuerdatei ist frei wählbar, so dass man ihn wie das Modul selbst bezeichnen kann. Die Text-Datei hat mehrere Abschnitte und jeder Abschnitt verschiedene Einträge und ist aufgebaut wie eine INI-Datei. Es folgt zunächst ein Beispiel und anschließend eine Beschreibung zu den einzelnen Werten.
[Modul] Version=1.1 UID=38D2B9EA-840A-4A9D-B7EB-8574904CDE6C Languages=DE;IT Name.DE=Besuchsjournal Name.IT=Registro di visita Option.Count=1 Required.Count=1 ReadmeAutostart=1 OnInstall=OnInstall.vbs [Binary] count=1 File.1=readme.pdf [Vendor] UID=97AE4A03-A813-4639-854F-3023BF9A3C28 VendorID=ESOL Name=EULANDA Software GmbH Email=info@eulanda.de Url=http://www.eulanda.de [Required.1] UID=8DCA1651-5F91-41C2-83E2-50EEB48AE09E Version=3.5 PrimaryLanguages=* Languages=DE;IT Name.DE=EULANDA Name.IT=EULANDA [OPTION.1] UID=A9A5E7EF-3ED0-46AA-A8E3-3B3FC52C709B Required=1 Default=1 Name.DE=Standard Name.IT=Standard Install.Count=2 Install.1=CreateTable.sql Install.2=Besuchsjournal.cnreg Uninstall.Count=2 Uninstall.1=DropTable.sql Uninstall.2=Besuchsjournal.delcnreg
Der Abschnitt MODUL enthält alle wesentlichen Dinge die das Modul beschreiben.
| Befehl | Beschreibung |
|---|---|
| VERSION | Gibt die Versionsnummer des Plugins an. Beispiel: VERSION=1.02 |
| UID | Die UID ist eine eindeutige Identifikations-Nummer des Moduls. Der
Modulentwickler erzeugt sich diese Nummer mit dem iScript-Editor.
Ein Beispiel folgt am Ende des Dokuments. Wurde diese Nummer einmal
für das Modul festgelegt, darf sie nicht mehr verändert oder für ein
anderes Modul vergeben werden. Die Nummer hat den windowsüblichen
GUID-Aufbau. Beispiel: UID=38D2B9EA-840A-4A9D-B7EB-8574904CDE6C |
| LANGUAGES | Der Entwickler kann mit seinem Modul verschiedene Sprachen
unterstützen. Die unterstützten Sprachen werden durch Semikolon
getrennt im zweistelligen ISO-CODE angegeben. Jeder aufgeführte
Sprache wird dann in den Sprachabschnitten auch erwartet. Im
Abschnitt Requiredist es möglich, anzugeben dass das Plugin eine bestimmte Primärsprache beim Anwender erfordert. Beispiel: LANGUEGES=DE;IT |
| NAME | Mit Namewird der Modulname bezeichnet, der beim Kunden angezeigt wird. Es ist sprachenabhängig. Die Sprache wird mit einem Punkt getrennt angegeben. Auf diese Weise können internationale Plugins anbieten. Beispiel: NAME.IT=Registro di visita |
| OPTION.COUNT | Mit einem Punkt getrennt wird angegeben, aus wievielen Optionen
das Plugin besteht. Es muss mindestens eine Option vorhanden sein.
Die einzelnen Optionen werden in einem
gesonderten Abschnitt angegeben. Der Kunde kann später entscheiden
welche Optionen des Plugins er installieren möchte. Beispiel: OPTION.COUNT=1 |
| REQUIRED.COUNT | Dieser Wert gibt an, wie viele Programme oder Module dieses Plugin
vor der Installation voraussetzt. Beispielsweise hat EULANDA selbst eine UID
und man kann hierüber angeben, dass eine bestimmte Version von
EULANDA Voraussetzung ist. Die einzelnen Module werden in einem
gesonderten Abschnitt angegeben. Beispiel: REQUIRED.COUNT=1 |
| READMEAUTOSTART | Dieser Wert kann entweder 0 oder 1 sein. Wird im BINARY-Abschnitt eine Datei mit dem Namen READMEangegeben, unabhängig von der Dateierweiterung (PDF, HTM, TXT, JPG) so kann diese Datei vor der Installation automatisch angezeigt werden. Hierzu muss READMEAUTOSTATauf 1 gesetzt werden. Der Endanwender kann jedoch diese Readme-Datei auch über die Schaltfläche Informationen im Plugin-Manager anzeigen lassen. Beispiel: READMEAUTOSTART=1 |
| ONINSTALL | Bei Installation oder einem Update kann ein VBScript-Code vor der Installation ausgeführt werden.
Hierdurch ist es möglich komplexere Prüfungen
vorzunehmen und man kann ggf. den Installationsprozess an dieser
Stelle abbrechen. Über Installer.Abort=1wird die Installation programmatisch in Ihrem Scriptcode abgebrochen. Mit ONINSTALLwird eine VBScript-Datei angegeben. Beispiel: ONINSTALL=MYVB.vbs |
Der Abschnitt BINARY enthält beliebige Binärdateien, die dem Modul zugeordnet werden. Sie werden bei jeder Operation wie Installation, Update, Optionswechsel usw. in das temporäre Verzeichnis des PCs entpackt. Scripts und Batchdateien können diese dann direkt benutzen.
| Befehl | Beschreibung |
|---|---|
| COUNT | Dieser Wert gibt an, wie viele Dateien in diesem Abschnitt
aufgeführt werden. Beispiel: COUNT=1 |
| FILE | Mit einem Punkt getrennt wird die laufende Nummer angegeben. Die
Datei muss im selben Ordner liegen wie die
Steuerdatei. Es kann jeder Dateityp angegeben werden. Da diese Dateien jedoch in die SQL-Datenbank zur Tabelle cnModules eingeblobt werden, sollten diese
nicht allzu groß sein. Einen Sonderfall ist der Name README. Wird dieser benutzt, so wird das Anzeigen dieser Datei im Plugin-Manager auf die Taste Informationengelegt und kann zusätzlich über die Option READMEAUTOSTART vor Ausführen der Installation angezeigt werden. Beispiel: FILE.1=readme.pdf |
Der Abschnitt VENDOR beschreibt den Hersteller des Plugins.
| Befehl | Beschreibung |
|---|---|
| UID | Jeder registrierte Vendor erhält von der EULANDA-Software eine
eindeutige UID für sein Unternehmen. Die Nummer hat den
windowsüblichen GUID-Aufbau. Beispiel: UID=97AE4A03-A813-4639-854F-3023BF9A3C28 |
| VENDORID | Die VENDIRID ist ein historischer Wert der vor der
Einführung der UID benutzt wurde. Heute wird dieser Name lediglich
zur Kennzeichnung eigener Registry- und SQL-Objekte benutzt. Dieser sprechende Name ist eine Kurzbezeichnung des Vendors. Beispiel: VENDORID=esol |
| NAME | Mit der Eigenschaft NAME wird der Klartext Firmenname des Vendors
angegeben. Er ist frei wählbar wird im Plugin-Manager angezeigt. Beispiel: NAME=EULANDA Software GmbH |
| Hierüber wird die offizielle Email-Adresse des Vendors
angegeben. Beispiel: EMAIL=info@eulanda.de |
|
| URL | Über URL wird die Homepage-Adresse des Vendors angegeben. Beispiel: URL=www.eulanda.de |
Der Abschnitt REQUIRED beschreibt Module, die Voraussetzung zur Installation des Plugins sind.
| Befehl | Beschreibung |
|---|---|
| UID | Die UID ist eine eindeutige Identifikations-Nummer eines Moduls.
Im REQUIRED-Abschnitt kann hierdurch das Vorhandensein eines
bestimmten Moduls oder der EULANDA selbst in einer bestimmten
Mindestversion vorausgesetzt werden. Die Nummer hat den windowsüblichen
GUID-Aufbau. Beispiel: UID=8DCA1651-5F91-41C2-83E2-50EEB48AE09E |
| VERSION | Über Version kann eine bestimmte Mindestversionsnummer angegeben
werden. Es wird dann geprüft ob das mit UID angegebene Modul in
dieser Mindestversion vorhanden ist. Beispiel: Version=3.5 |
| PRIMARYLANGUAGES | Die Primärsprache von EULANDA ist die Installationssprache. Im
Normalfall arbeiten Plugins unter allen EULANDA-Sprachversionen. In
dem Fall wird ein Stern angegeben. Wird die Installation nur auf
bestimmten Sprachen unterstützt, so können diese Sprachen im
zweistelligen ISO-CODE durch Semikolon getrennt angegeben werden. Beispiel: PRIMARYLANGUAGES=* |
| NAME | Der Name des Required-Moduls. Ist dieses Modul nicht installiert, so wird eine Fehlermeldung angezeigt und dieser
fehlende Modulname angezeigt. Wobei die Sprache mit dem Punkt vom Namen getrennt wird. Es müssen alle Sprachen aufgeführt werden, die im Abschnitt MODULE angegeben wurden. Beispiel: Name.DE=EULANDA |
Der Abschnitt OPTION gibt eine zu installierende Option des Moduls an.
| Befehl | Beschreibung |
|---|---|
| UID | Die UID ist eine eindeutige Identifikations-Nummer der Option. Der
Entwickler erzeugt sich diese Nummer mit dem iScript-Editor.
Ein Beispiel folgt am Ende des Dokuments. Wurde diese Nummer einmal
für diese Option festgelegt, darf sie nicht mehr verändert oder für ein
anderes Modul oder eine andere Option benutzt
werden. Die Nummer hat den windowsüblichen
GUID-Aufbau. Beispiel: UID=A9A5E7EF-3ED0-46AA-A8E3-3B3FC52C709B |
| REQUIRED | Gibt an, dass diese Option nicht durch den Anwender abgewählt werden kann. Diese wird dann auch nicht im Plugin-Manager angezeigt, jedoch immer installiert. Die erste Option muss
REQUIRED sein. Beispiel: REQUIRED=1 |
| DEFAULT | Wenn eine Option nicht REQUIRED ist, kann der Anwender diese aktivieren. Ist
DEFAULT=1, so ist der Haken im Plugin-Manager schon vorgewählt und der Anwender
kann die Option explizit abwählen, wenn er diese nicht möchte. Beispiel: DEFAULT=1 |
| NAME | Der Name der zu installierenden Option. Wobei die Sprachangabe mit dem Punkt vom Namen getrennt wird. Es müssen alle Sprachen aufgeführt werden, die im Abschnitt MODULE angegeben wurden.
Beispiel: NAME.DE=Standard |
| INSTALL.COUNT | Gibt an wie viele Steps, also Installationsschritte diese Option hat. Beispiel: INSTALL.COUNT=2 |
| INSTALL | Über einen Punkt getrennt wird der Step definiert. Ein Step ist ein Dateiname mit den zulässigen Endungen CNREG, DELCNREG, SQL, VBS, BAT und IMP.
Beispiel: INSTALL.1=CreateTable.sql |
| UNINSTALL.COUNT | Gibt an wie viele Steps, also Deinstallationsschritte diese Option hat. Beispiel: UNINSTALL.COUNT=2 |
| UNINSTALL | Über einen Punkt getrennt wird der Step definiert. Ein Step ist ein Dateiname mit den zulässigen Endungen CNREG, DELCNREG, SQL, VBS, BAT und IMP.
Beispiel: UNINSTALL.1=DropTable.sql |
Wird mit dem Package-Builder die obige Beispiels-Steuerdatei verwendet, so erzeugt dieser eine eulanda.xml-Datei die wie folgt aussieht:
<?xml version="1.0" encoding="windows-1252" ?>
<EULANDA>
<METADATA>
<VERSION>1.1</VERSION>
<GENERATOR>EULANDA</GENERATOR>
<DATEFORMAT>ISO8601</DATEFORMAT>
<FLOATFORMAT>US</FLOATFORMAT>
<FIELDNAMES>NATIVE</FIELDNAMES>
<DATE>2008-10-06</DATE>
<PCNAME>DELPHI2006</PCNAME>
<USERNAME>CHRIS</USERNAME>
<DATABASEVERSION>4.12</DATABASEVERSION>
</METADATA>
<KONZIELLISTE />
<KONERLOESKONTOLISTE />
<KONWGLISTE />
<KONVERSANDARTLISTE />
<KONBANKLISTE />
<ADRESSELISTE />
<VERTRETERLISTE />
<ARTIKELLISTE />
<AUFTRAGLISTE />
<ANGEBOTLISTE />
<ZAHLUNGENJOURNALLISTE />
<MAILINGLISTE />
<MODULLISTE>
<MODUL>
<VERSION>1.1</VERSION>
<UID>38D2B9EA-840A-4A9D-B7EB-8574904CDE6C</UID>
<READMEAUTOSTART>1</READMEAUTOSTART>
<PREINSTALL FILENAME="Preinstall.vbs" FORMAT="PLAIN" COMMAND="VBSCRIPT">installer.abort = 0</PREINSTALL>
<NAME>
<DE>Besuchsjournal</DE>
<IT>Registro di visita</IT>
</NAME>
<VENDOR>
<UID>97AE4A03-A813-4639-854F-3023BF9A3C28</UID>
<NAME>EULANDA Software GmbH</NAME>
<VENDORID>ESOL</VENDORID>
<EMAIL>info@eulanda.de</EMAIL>
<URL>http://www.eulanda.de</URL>
</VENDOR>
<BINARY>
<FILE FILENAME="readme.pdf" FORMAT="BINHEX">0303633E0D0A30303030303525454F46</FILE>
</BINARY>
<REQUIREDLISTE>
<REQUIRED>
<UID>8DCA1651-5F91-41C2-83E2-50EEB48AE09E</UID>
<VERSION>3.5</VERSION>
<PRIMARYLANGUAGES />
<NAME>
<DE>EULANDA</DE>
<IT>EULANDA</IT>
</NAME>
</REQUIRED>
</REQUIREDLISTE>
<OPTIONLISTE>
<OPTION>
<UID>A9A5E7EF-3ED0-46AA-A8E3-3B3FC52C709B</UID>
<REQUIRED>1</REQUIRED>
<DEFAULT>1</DEFAULT>
<NAME>
<DE>Standard</DE>
<IT>Standard</IT>
</NAME>
<INSTALL FILENAME="CreateTable.sql" FORMAT="PLAIN" COMMAND="SQL">IF OBJECT_ID('esolBesuchsjournal')...</INSTALL>
<INSTALL FILENAME="Besuchsjournal.cnreg" FORMAT="PLAIN" COMMAND="SQLREGISTRY">CommandText.crypt"=binhex:63727970746...</INSTALL>
<UNINSTALL FILENAME="DropTable.sql" FORMAT="PLAIN" COMMAND="SQL">IF NOT OBJECT_ID..</UNINSTALL>
<UNINSTALL FILENAME="Besuchsjournal.delcnreg" FORMAT="PLAIN" COMMAND="DELSQLREGISTRY">\OBJECTS\DATAOBJECTS\Eulanda.Adresse\Actions...</UNINSTALL>
</OPTION>
</OPTIONLISTE>
</MODUL>
</MODULLISTE>
</EULANDA>
Der Modulabschnitt selbst ist etwas komplexer, weshalb wir die
Verwendung des Package-Builder empfehlen. Der Package-Builder fügt die
in der Steuerdatei referenzierten Dateien in die eulanda.xml
-Datei als eingebettete
Zusatzdateien ein.
Mit dem folgenden VBScript-Code, den Sie im iScript-Editor ausführen können wird
eine .cninst
-Datei erzeugt. Das Beispiel setzt eine Datei BesuchsJournal.txt im
Ordner C:\TEST voraus, die eine entsprechende Definition enthält und natürlich
auch alle externen Dateien im Ordner C:\TEST. Zur Kontrolle werden noch zwei
XML-Dateien erzeugt, die EULANDA.XML, die auch im Internet-Explorer angesehen
werden kann und den reinen Modul-Code in MODUL.XML
dim installer
set installer = Client.CreateDialog("Eulanda.InstallerDlg","")
installer.BuildPackage("C:\TEST\BesuchsJournal.txt")
set installer = nothing
Um für seine eigenen Module und Optionen eigene UIDs zu erzeugen,
stellt das Installer-Objekt die Methode NewUID
zur Verfügung.
dim installer
set installer = Client.CreateDialog("Eulanda.InstallerDlg","")
MsgBox installer.NewUID
set installer = nothing
Wenn Sie SQL-Scripts einbinden möchten ist es wichtig, dass Ihr SQL-Script keine GO
Befehle enthält. Sie müssen dann für jeden Befehl
einen STEP definieren.
Entwickler können ein Lizenzabkommen mit der EULANDA Software GmbH abschließen und erhalten dann vom Vertrieb eine Registrierung mit eine entsprechende Unternehmens UID, sowie eine VendorID zur Bezeichnung eigener Registry-Objekte. Module lassen sich im Library-Bereich verschlüsseln. Hierzu erhält der Entwickler einen persönlichen Verschlüsselungsschlüssel.
Mit diesem kann er verschlüsselte Module erstellen. Zusätzlich unterstützt die API auch eine Serialisierung. Hierbei können bestimmte hochwertige Module mit einem Lizenzschlüssel versehen werden, der nur auf dem System des Endkunden mit einem bestimmten Produkschlüssel aktivierbar ist. Dieser Lizenzschlüssel kann jeweils vom Entwickler erworben werden und erlaubt es, sein Modul auf einfache Weise zu schützen.
Kostenfreie Module kann jeder registrierte Entwickler in die EULANDA Bibliothek einstellen, zusätzlich wird es die Möglichkeit geben, Module über das neue SHOP-System der EULANDA Software GmbH zu vertreiben. Auf diese Weise lassen sich Plugins kommerziell entwickeln und bequem anbieten. Die Konditionen für die Aufnahme von Modulen im Shop werden demnächst veröffentlicht.
Ein neues Branding-Konzept erlaubt es zukünftig, dass Vertreiber von EULANDA-Software auch an geladenen Plugins partizipieren. Das Shopsystem registriert den Ursprung und schreibt dem Ursprungshändler der ein Branding-Abkommen hat, entsprechende Umsätze gut.