Farbschema: Hell
Sie befinden sich hier: start » de » Dokumentation » Werkzeuge für Microsoft Access » WKL Forms Object Library » reference » Was die Registrierung pro Benutzer schreibt

Was die Registrierung pro Benutzer schreibt

Die Registrierungseinträge, die regsvr32 /n /i:user für Wkl.Forms.ObjectLibrary.dll schreibt, was regsvr32 /u /n /i:user entfernt und welche ähnlichen Einträge stattdessen zu Office gehören. Damit prüfen Sie, ob ein PC nach dem Aufheben der Registrierung sauber oder nach dem Registrieren vollständig ist. Die Schritte selbst stehen unter Freigegebenes Paket installieren.

Registrierungsansichten

Eine 32-Bit- und eine 64-Bit-Registrierung sind bei den Klassen-IDs getrennt und beim Übrigen gemeinsam:

Teil32 Bit (x86-DLL)64 Bit (x64-DLL)
KlassenHKCU\Software\Classes\WOW6432Node\CLSID\{class id}HKCU\Software\Classes\CLSID\{class id}
ProgIDsHKCU\Software\Classes\WklForms.<Name> (ein Schlüssel für beide)derselbe Schlüssel
TypbibliothekHKCU\Software\Classes\TypeLib\{A37D549E-FCD0-48EC-8B14-C7323B747E4F}\<version>\0\win32derselbe Schlüssel, Unterschlüssel 0\win64

<version> ist das Release x.y in hexadezimaler Schreibweise: 1.56 ist 1.38. Ein Programm beliebiger Bitversion, das die 32-Bit-Ansicht der Registrierung liest (RegistryView.Registry32), sieht die Schlüssel unter WOW6432Node als CLSID.

Was das Registrieren schreibt

SchlüsselWerte und Unterschlüssel
CLSID\{class id}, einer je KlasseStandardwert: Beschreibung; InprocServer32 (Standardwert: vollständiger Pfad der DLL, ThreadingModel = Apartment); ProgID; TypeLib (die Bibliotheks-ID); Version (x.y des Releases)
derselbe, für jedes Steuerelementzusätzlich Control, MiscStatus (und MiscStatus\1), Implemented Categories mit den Kategorien Steuerelement, sicher für Skripterstellung {7DD95801-9882-11CF-9FA9-00AA006C42C4} und sicher für Initialisierung {7DD95802-9882-11CF-9FA9-00AA006C42C4}, sowie ToolboxBitmap32, wo das Steuerelement ein Toolbox-Bild hat
WklForms.<Name>, einer je KlasseStandardwert: Beschreibung; CLSID = die Klassen-ID
TypeLib\{A37D549E-...}\<version>Name „WKL Forms x.y Object Library“; 0\win32 oder 0\win64 = Pfad der DLL; FLAGS; HELPDIR = Ordner der DLL
Interface\{interface id}, einer je Schnittstelle der Typbibliothekvon Windows (RegisterTypeLibForUser) zusammen mit der Typbibliothek geschrieben

Release 1.60 registriert in jeder Bitversion 49 Klassen, davon 24 Steuerelemente. Das Registrieren entfernt außerdem jede andere Version der Typbibliothek derselben Bitversion, sodass je Bitversion nur eine Version registriert bleibt. Eine Datenbank oder ACCDE, die gegen ein älteres Release gebaut wurde, öffnet sich weiterhin: Access bindet den Verweis über die Bibliotheks-ID und die Hauptversion (1) und nimmt deshalb die neuere registrierte Version. Der umgekehrte Fall – eine Datenbank, die gegen ein neueres Release gebaut wurde, auf einem PC mit einem älteren – wird nicht unterstützt: Er kann scheitern (Verweis NICHT VORHANDEN, Fehler 459) und ist auch dort nicht zugesichert, wo er zu funktionieren scheint (siehe „Reihenfolge eines Updates“ in Anwendung mit WKL-Steuerelementen auf Benutzer-PCs verteilen).

Was das Aufheben der Registrierung entfernt

regsvr32 /u /n /i:user mit der DLL einer Bitversion entfernt:

  • die CLSID-Schlüssel ihrer Klassen in der Ansicht ihrer Bitversion;
  • die ProgID-Schlüssel, außer denen, deren Klasse in der anderen Ansicht noch registriert ist (das Aufheben der x86-Registrierung lässt die ProgIDs einer verbleibenden x64-Registrierung bestehen);
  • die Version der Typbibliothek der DLL für ihre Bitversion, mit den Interface-Schlüsseln, die Windows dafür geschrieben hat (UnRegisterTypeLibForUser).

Heben Sie die Registrierung beider Bitversionen auf, um alles zu entfernen. In keiner der beiden Richtungen wird etwas in HKEY_LOCAL_MACHINE geschrieben.

Einträge, die nicht zur Registrierung gehören

Diese Einträge bleiben nach dem Aufheben der Registrierung bestehen und sind kein Zeichen einer unvollständigen Entfernung:

  • Typbibliotheken mit dem Namen „WKL Forms x.y Object Library“ unter anderen Bibliotheks-IDs, deren 0\win32 auf %TEMP%\VBE\WklForms.exd oder %APPDATA%\Microsoft\Forms\WklForms.exd zeigt. Office schreibt sie als Cache, wenn VBA oder eine UserForm die Steuerelemente lädt; die Registrierung schreibt und entfernt sie nicht. Office legt sie bei Bedarf wieder an.
  • Das Access-Add-In (HKCU\Software\Microsoft\Office\Access\Menu Add-Ins\WKL ...) wird von der eigenen Installation des Add-Ins (tools\install-addin.ps1) geschrieben, nicht von der Registrierung.
  • WKL Office JSON (WklJSON.JDoc, eigene Typbibliothek „WKL Office JSON 1.0“) ist eine eigenständige Bibliothek mit eigener Registrierung; siehe deren Dokumentation.

Verwandte Themen

de/wiki/msaccess/comctl/reference/per-user-registration.txt · Zuletzt geändert: von Wolfgang van der Stille