2008-10-14 12 views
7

Ich arbeite an einer Anwendung, die ComponentOne's C1FlexGrid intensiv nutzt. Von den Dutzenden, die wir verwenden, fehlen drei die Datei licenses.licx, und der Demo-Begrüßungsbildschirm erscheint, wenn ich die Anwendung starte.Fehlende ComponentOne licenses.licx Datei

Gibt es eine Möglichkeit zu bestimmen, welche Formulare dieses Verhalten verursachen. Abgesehen davon, dass ich Hunderte von Verzeichnissen manuell überprüfe, sehe ich keinen Weg.

Antwort

6

Laut Microsoft-Dokumentation nur die ausführbare Assembly erfordert eine licenses.licx. Dll-Assemblys mit Formularen in ihnen wird immer noch erstellen, aber es wird ignoriert. Das war auch meine Erfahrung. Ich würde vorschlagen, jedes Formular in der Designeransicht zu öffnen und in dieser Ansicht neu zu erstellen. Dadurch werden normalerweise die fehlenden Lizenzeinträge zu licenses.licx hinzugefügt. Aktuelle Einträge werden jedoch nicht aktualisiert. Dies kann ein Problem sein, wenn Sie Ihre Komponenten aktualisiert haben. Bei ComponentOne können Sie in der Regel die Datei "licenses.licx" bearbeiten und die Versionsinformationen nach dem Assemblynamen entfernen. Einige andere Komponenten von Drittanbietern sind kniffliger und berühren ihre Versionsinformationen verursacht Fehler beim Kompilieren.

Meiner Meinung nach .NET Lizenzierungsrahmen ist umständlich und eine unnötige Belastung für die Entwickler. Es gibt viel einfachere Möglichkeiten, um sicherzustellen, dass Komponentenlizenzen eingehalten werden.

+3

ComponentOne hat ein Dienstprogramm veröffentlicht, die die Versionsinformationen von allen Ihren licenses.licx Dateien für Sie entfernt: http://helpcentral.componentone.com/CS/general/b/general_blog/archive/2011/02/11/ c1projectupdater-utility.aspx –

+0

Das oben erwähnte Dienstprogramm wurde zu [diesem Link] verschoben (http://our.componentone.com/2011/02/11/c1projectupdater-utility/) –

2

Sie müssen nicht jedes Formular öffnen. Jedes Projekt hat eine einzige licenses.licx-Datei. Stellen Sie nur sicher, dass das C1FlexGrid in diesen Dateien referenziert ist, und führen Sie dann eine vollständige Neuerstellung durch (Build | Rebuild All).

Das sollte sich um das Problem kümmern.

0

Manchmal funktioniert das Öffnen von Formularen und das Wiederherstellen der gesamten Lösung sogar nicht. Also in dieser Situation. Ziehen Sie einfach ein ComponentOne-Steuerelement aus der Toolbox in Ihr Formular (Sie können es anschließend löschen). Dieser Drag-Drop generiert automatisch licenses.licx im Eigenschaften-Ordner.