Namestitev izdanega paketa
Izdajo WKL Forms Object Library namestite na razvijalski računalnik, tako da se kontrolniki prikažejo v Accessovem pogovornem oknu Kontrolniki ActiveX in jih pozna VBA – brez izvorne kode in brez kakršne koli gradnje.
Zahteva Windows 10 ali 11 in Microsoft 365 Access ali Access Runtime.
Pregled rešitve
- Izvajalno okolje: namestite .NET 10 Desktop Runtime v bitni različici Officea.
- Datoteke: mapo izdaje za bitno različico Officea (
x86za 32-bitni Office,x64za 64-bitni Office) kopirajte v lokalno mapo, ki ostane na svojem mestu. - Registracija:
Wkl.Forms.ObjectLibrary.dlliz te mape registrirajte zregsvr32iste bitne različice, za trenutnega uporabnika sistema Windows (/n /i:user, brez skrbniških pravic). - Preverjanje: v urejevalniku VBA se prikaže sklic WKL Forms x.y Object Library izdaje.
Podprta konfiguracija: 32- in 64-bitni Access (Microsoft 365 Access in Access Runtime); paket vsebuje datoteke za obe različici.
Izvedba
- Ugotovite bitno različico Officea. WKL sledi programu Microsoft Access, ne sistemu Windows: z 64-bitnim Accessom uporabite datoteke
x64, z 32-bitnim Accessom pa datotekex86. V Accessu: Datoteka › Račun › Vizitka programa Access pokaže „32-bitno“ ali „64-bitno“. Bitna različica sistema Windows ni pomembna: 32-bitni Office v 64-bitnem sistemu Windows potrebuje 32-bitne datoteke (x86). Microsoft Office privzeto namesti kot 64-bitnega; 32-bitni Office ostaja razširjen tam, kjer se uporabljajo starejše rešitve VBA, kontrolniki ActiveX ali dodatki, zato sta zgrajeni obe bitni različici. Neujemanje se pokaže kot manjkajoči kontrolniki ali sklic, označen kot MISSING (odpravljanje težav). - Namestite .NET 10 Desktop Runtime te bitne različice s strani https://dotnet.microsoft.com/download/dotnet/10.0 (stolpec „Desktop Runtime“, x86 za 32-bitni Office, x64 za 64-bitni Office). Izvajalno okolje druge bitne različice ne pomaga.
Kopirajte datoteke. Izdaja vsebuje mapi
x86inx64s kontrolniki,tools\build(orodje za gradnjo, glejte Gradnja aplikacije Access iz besedilnih izvornih datotek),control-blocks(gradniki vseh kontrolnikov WKL, glejte Vstavljanje kontrolnikov WKL v obrazce s kodo),CHANGELOG.mdinaddinstools\install-addin.ps1, dodatkom WKL Extensions z oblikovalniki v meniju Orodja zbirke podatkov › Dodatki (tools\install-addin.ps1zaženite enkrat za vsakega uporabnika sistema Windows, ko je Access zaprt). Celoten paket izdaje kopirajte v lokalno mapo, ki ostane na svojem mestu, na primer%LOCALAPPDATA%\WKL\Access Components\<version>, tako da ostanejotools,control-blocksinthemesskupaj s kontrolniki in jih projektne datoteke navajajo z enega mesta. Datoteke mape bitne različice sodijo skupaj; registracija kaže na%LOCALAPPDATA%\WKL\Access Components\<version>\x86:Datoteka Namen Wkl.Forms.ObjectLibrary.dllDatoteka, ki jo registrirate: izvorni zagonski modul s knjižnico tipov Wkl.Forms.ObjectLibrary.Managed.dll,.deps.json,.runtimeconfig.jsonKontrolniki na .NET 10, ki jih zagonski modul naloži iz iste mape Wkl.Forms.ObjectLibrary.Core.dllLogika kontrolnikov brez COM Wkl.Office.Json.Core.dllMehanizem JSON za JPath in AsJSON*.pdb,*.xmlSimboli za razhroščevanje in datoteke dokumentacije; za izvajanje niso potrebni in jih lahko izpustite Zaprite vse primerke Accessa (Access naloženo DLL obdrži, dokler se ne konča), nato registrirajte za trenutnega uporabnika sistema Windows. Za 32-bitni Office:
%windir%\SysWOW64\regsvr32.exe /n /i:user "%LOCALAPPDATA%\WKL\Access Components\<version>\x86\Wkl.Forms.ObjectLibrary.dll"
Za 64-bitni Office:
%windir%\System32\regsvr32.exe /n /i:user "%LOCALAPPDATA%\WKL\Access Components\<version>\x64\Wkl.Forms.ObjectLibrary.dll"
regsvr32uspeh sporoči v polju s sporočilom; v skriptih ga preprečite z/s(izhodna koda je tedaj ob uspehu0). Registracija izdaje za tega uporabnika odstrani registracije vseh drugih različic knjižnice, zato podatkovna zbirka nikoli ne izbere starejše kopije.- Preverjanje. Odprite podatkovno zbirko, odprite urejevalnik VBA (Alt+F11), izberite Orodja › Sklici in poiščite WKL Forms <version> Object Library (različica izdaje). Obrazec v pogledu načrta zdaj ponuja kontrolnike v Načrt obrazca › Kontrolniki › Kontrolniki ActiveX („WKL Grid“, „WKL TreeView“ …). Access sklic WKL Forms x.y Object Library nastavi sam, ko vstavite kontrolnik; ta zagotavlja IntelliSense in konstante (
wke…,wso…,wdz…in tako naprej).WklToastinWklLinkManagersta objekta, ne kontrolnika: sklic nastavite v urejevalniku VBA (Orodja › Sklici › WKL Forms x.y Object Library) in ju ustvarite zNew.
Registracijo odstranite tako, da zaprete Access in isti ukaz zaženete z /u:
%windir%\SysWOW64\regsvr32.exe /u /n /i:user "%LOCALAPPDATA%\WKL\Access Components\<version>\x86\Wkl.Forms.ObjectLibrary.dll"
Novejšo izdajo namestite tako, da zaprete Access, izdajo kopirate v lastno mapo in jo registrirate kot v 4. koraku; nato izbrišite staro mapo.
Opombe
- Za posameznega uporabnika sistema Windows.
/n /i:userpiše samo vHKEY_CURRENT_USER. Vsak uporabnik sistema Windows na računalniku, ki odpre podatkovno zbirko, se enkrat registrira zase. Registracija za vse uporabnike računalnika (regsvr32brez/n /i:user, kot skrbnik) v tej izdaji ni podprta. - Mapa mora ostati. Če mapo premaknete ali izbrišete, se registracija pokvari: kontrolnikov ni v pogovornem oknu, sklic pa je označen kot MISSING. Registrirajte znova z novega mesta.
- Kako je videti registracija. Razred (ProgID-ji
WklForms.*in njihovi ID-ji razredov) je v vseh izdajah enak, zato podatkovna zbirka, zgrajena s starejšo izdajo, najde novejšo. Knjižnica tipov ima različico izdaje, x.y; Windows jo kot ime ključa zapiše šestnajstiško podHKEY_CURRENT_USER\Software\Classes\TypeLib\{A37D549E-FCD0-48EC-8B14-C7323B747E4F}, zato je izdaja 1.56 ključ1.38(0x38 = 56) z imenom „WKL Access Components 1.56“ kot vrednostjo,0\win32in0\win64pa navajata DLL vsake bitne različice. Urejevalnik VBA prikazuje desetiško ime. Podatkovna zbirka se na knjižnico tipov veže po njenem ID-ju in ob odpiranju razreši različico, ki je registrirana (glejte Različice). - Brez lastnega namestitvenega programa. Namestite z zgornjimi koraki ali s skriptom z njimi (Uvajanje aplikacije s kontrolniki WKL v računalnike uporabnikov) ali pa komponente namestite skupaj z aplikacijo prek WKL Bootstrapper, ki jih registrira za vsakega uporabnika.
- Druga različica .NET v Accessu. Izvorni zagonski modul v
MSACCESS.EXEnaloži izvajalno okolje .NET 10. Proces lahko izvaja samo eno različico .NET (CoreCLR): če je drug dodatek v Access prej naložil drugo različico, se kontrolniki ne morejo zagnati, zagonski modul pa to sporoči v sporočilu, namesto da bi motil Access; glejte Access sporoča, da je naložena druga različica .NET.
Sorodne teme
- Kaj zapiše registracija za posameznega uporabnika – za preverjanje računalnika po registraciji ali odstranitvi registracije
CHANGELOG.mdv paketu izdaje – kaj vsebuje posamezna izdaja