Color scheme: Riviera
You are here: start » de » Dokumentation » Werkzeuge für Microsoft Access » WKL Bootstrapper » Fehlercodes des Starters » Die Anwendung wurde für eine andere Generation der WKL-Komponenten erstellt (Code 37)

Die Anwendung wurde für eine andere Generation der WKL-Komponenten erstellt (Code 37)

Das Fenster des Starters meldet: „Diese Anwendung wurde für eine andere Generation der WKL-Komponenten erstellt als die, die auf diesem Computer verwendet wird.“ Darunter steht der Fehlercode 37. Die Diagnosedetails (Alt+D) nennen das registrierte Release und die Version, für die die Anwendung gebaut wurde. Der Exitcode des Starters ist 37.

Umgebung

WKL Bootstrapper 3.1 und höher, für eine Anwendung mit WKL-Steuerelementen. Auf dem Computer ist die WKL Forms Object Library für den Benutzer in einer anderen Hauptversion registriert als der, für die die Anwendung gebaut wurde: auf der einen Seite Release 1.x (Typbibliothek WklComponents), auf der anderen Release 2.0 oder höher (Typbibliothek WklForms).

Ursache

Mit Release 2.0 der WKL Forms Object Library hat die Typbibliothek einen neuen Namen erhalten; die Klassen-IDs von 1.x sind geblieben. Für einen Windows-Benutzer ist deshalb entweder 1.x oder 2.x registriert, nie beides. Eine Anwendung läuft nur mit der Hauptversion, für die sie gebaut wurde, denn ihr VBA-Code nennt die Typbibliothek.

In zwei Fällen hält der Starter an, statt das Release zu registrieren, das die Anwendung mitbringt:

  • Registriert ist eine spätere Hauptversion als die, die die Anwendung benötigt, und der Starter kann nicht feststellen, welche anderen Anwendungen sie verwenden: Die Registrierung stammt von einem Release-Paket, von der IT oder von einer Auslieferung ohne registration.json. Würde er das ältere Release registrieren, nähme er allen anderen Anwendungen des Benutzers die spätere Version weg.
  • Die Anwendung bringt eine andere Hauptversion mit als die registrierte, und eine andere installierte Anwendung benötigt die registrierte noch.

Geändert wird nichts: Die Registrierung bleibt, und eine bereits installierte Version der Anwendung arbeitet weiter wie bisher.

Lösung

  1. Lesen Sie die Diagnosedetails. Sie nennen das registrierte Release, das Release, das die Anwendung benötigt, und gegebenenfalls die andere Anwendung, die das registrierte Release benötigt.
  2. Lassen Sie die Anwendungen des Benutzers für dieselbe Hauptversion bauen. Eine Anwendung für 1.x wird einmal auf 2.0 umgestellt (WKL Forms Object Library: „Anwendung auf Release 2.0 umstellen“) und danach neu ausgeliefert.
  3. Starten Sie die Anwendung erneut, sobald alle Anwendungen des Benutzers dieselbe Hauptversion benötigen.
de/wiki/msaccess/bootstrapper/troubleshooting/37-wkl-forms-generation-mismatch.txt · Last modified: by Wolfgang van der Stille