Hallo
,
ich nutze in einem Projekt eine
ActiveX-Komponente. Beim Kauf habe ich eine Lizenz-Datei (*.lic) bekommen.
Liegt diese Datei aber nicht im Projektverzeichnis, so kommt immer zur Laufzeit eine Nachricht, dass die verwendete Komponente nur eine Test-Version ist, die nach 30 Tagen abläuft. Wenn die Datei drin liegt, läuft alles so wie gewünscht.
Die Entwickler schreiben, dass man diese Lizenz-Datei nicht mit ausliefern muss und darf (!). Sie soll mit in die Exe gelegt werden.
Weiter schreiben die, dass das VS das wohl automatisch macht. Natürlich wird Delphi offiziell nicht unterstützt, daher konnte mir auch niemand sagen, wie es dort funktioniert. Ich konnte leider auch keinen nachvollziehbaren Weg für das VS finden
.
Da das VS (welche Version kann ich leider auch nicht sagen) angeblich automatisch die lic-Datei einfügt, gehe ich davon aus, dass es ein typisches Verfahren bei
ActiveX ist.
Doch wie funktioniert so etwas? Wie kann ich die Lizenz-Datei "richtig" einbinden?
Ich habe es einfach mal so probiert:
{$R 'dcube.lic'}
Aber das klappt natürlich wie erwartet nicht...
Normaler weise legt Delphi (zumindest in der
Win32-Version) ja diese ..._TLB.pas Dateien beim Importieren einer
ActiveX-Komponente an. In dieser Datei lässt sich das hier finden: "LicenseKey: nil".
Doch unter .Net gibt es so etwas ja leider nicht. Da binde ich einfach die Ocx ein und erzeuge dann manuell zur Laufzeit die Komponente auf dem Formular.
Wenn jemand auch nur einen kleinen Hinweis hat, dann nur her damit
.
Besten Dank schon einmal,
euer Alexander
Nachtrag:
Gefunden hatte ich übrigens das hier:
http://msdn2.microsoft.com/de-de/library/fe8b1eh9(VS.80).aspx
Code:
license = LicenseManager.Validate(typeof(MyControl), this);
Da steht ja im Prinzip, dass man die Lic-Datei benötigt und dass es auch für
ActiveX funktionieren soll.
Nur verstehe ich nicht, wie ich beim Erzeugen der Komponente mit dem LicenseManager arbeiten soll.