Controls.add und Lizenzierung

24/11/2008 - 16:37 von Gert Wietzorek | Report spam
Hallo zusammen,

Vielleicht kann mit hier jemand mit folgendem Problem weiterhelfen:

Ich verwende ein lizenziertes Steuerelement in einem Projekt. Weil ich
vorab nicht weiß, wie viele Steuerelemente ich brauche, habe ich
überlegt, die benötigten zur Laufzeit mit controls.add() als
VBControlExtender hinzuzufügen. Die Lizenz kann man ja prinzipiell mit
licenses.add auch hinzufügen, soweit also kein Problem.

Wenn ich das Programm aber auf einem anderen Rechner ausführe, auf dem
das Steuerelement ohne Lizenz vorhanden ist (also nur mit der Anwendung
installiert wird), klappt es nicht, weil man mit licenses.add ja nicht
die Lizenz, sondern nur den Key für den Licenses Schlüssel in der
Registrierung übergeben kann - und der ist auf dem anderen Rechner leer,
klaro, soll da ja nicht in der Entwicklungsumgebung nutzbar sein,
schließlich ist das in der Vertriebslizenz nicht mit drin.

Habe ich jetzt ein Brett vor dem Kopf und sehe die einfache Lösung nicht
(ok, man könnte das Steuerelement zur Entwicklungszeit einfügen und
mit einem Controlarray arbeiten - würde aber dem gesamten Konzept des
Programms widersprechen, weil ich bei allen nicht lizensierten
Steuerelementen eben auch mit controls.add arbeite) oder geht das
wirklich nicht?

Gruß

Gert
 

Lesen sie die antworten

#1 Schmidt
24/11/2008 - 21:08 | Warnen spam
"Gert Wietzorek" schrieb im Newsbeitrag
news:ggehos$g57$

Wenn ich das Programm aber auf einem anderen Rechner
ausführe, auf dem das Steuerelement ohne Lizenz vorhanden
ist (also nur mit der Anwendung installiert wird), klappt es
nicht, weil man mit licenses.add ja nicht die Lizenz, sondern
nur den Key für den Licenses Schlüssel in der Registrierung
übergeben kann - und der ist auf dem anderen Rechner leer, ...



Dass da ein zweiter Parameter (neben der ProgID) innerhalb
Licenses.Add existiert, ist Dir klar nehm ich an - hast Du das
schonmal versucht, den auch zu besetzen?

Den "String-Wert" dieser Lizenzzeichenfolge kannst Du
z.B. ganz einfach in Deiner IDE (die das Control "kennt")
über das Direktfenster auslesen mittels z.B.:
?Licenses.Add ("MSFlexGridLib.MSFlexGrid")
gibt bei mir dann so etwas in der Art:
72______-____-____-____-__________30

Das dann in Deiner App kurz vor dem Controls.add-
Call eingefügt mittels:
Licenses.Add "MSFlexGridLib.MSFlexGrid", _
"72______-____-____-____-__________30"

sollte auch auf dem jungfràulichen Zielsystem normalerweise
zum Erfolg führen.

Kann man ja dann noch intern verschlüsseln oder ein
wenig "obfuskieren" den zweiten String-Parameter.

Olaf

Ähnliche fragen