Hvad du skal vide
- For at registrere en DLL-fil myfile.dll, indtast regsvr32 myfile.dll, og for at afregistrere den, skriv r egsvr32 /u myfile.dllind i kommandolinjen.
- Hvis du får en fejl, når du forsøger at registrere en DLL-fil, har du muligvis ikke de korrekte tilladelser, eller filen kan være blokeret.
- Andre fejl kan skyldes en manglende afhængighed; hvis det er tilfældet, skal du bruge Dependency Walker til at se alle afhængigheder, som DLL-filen kræver.
Denne artikel forklarer, hvordan man bruger kommandolinjeværktøjet regsvr32 i Windows, og hvordan man løser nogle regsvr32-fejl. Regsvr32 bruges til at registrere og afregistrere Object Linking and Embedding (OLE)-kontrolelementer, såsom DLL-filer og ActiveX-kontrolelementer. OCX filer. Du skal muligvis registrere en DLL-fil, hvis du ser en DLL-fejl på din computer.
Sådan registreres og afregistreres en DLL-fil
Hvis referencerne i Windows-registreringsdatabasen, der henviser til DLL-filen, på en eller anden måde fjernes eller beskadiges, kan programmer, der skal bruge den DLL-fil, holde op med at virke. Det er, når denne forbindelse med registreringsdatabasen er brudt, at en DLL-fil skal registreres.
Registrering af en DLL-fil udføres typisk ved at geninstallere det program, der registrerede den i første omgang. Nogle gange skal du dog selv registrere DLL-filen manuelt via kommandoprompten.
Se vores selvstudie om, hvordan du åbner kommandoprompt, hvis du ikke er sikker på, hvordan du finder den.
Dette er den korrekte måde at strukturere en regsvr32-kommando på:
regsvr32 [/u] [/n] [/i[:cmdline]
Du skal f.eks. indtaste denne første kommando for at registrere en DLL-fil med navnet myfile.dll, eller den anden for at afregistrere den:
regsvr32 myfile.dll
regsvr32 /u myfile.dll
Ikke alle DLL'er kan registreres ved blot at indtaste kommandoen ovenfor i en kommandoprompt. Du skal muligvis først lukke tjenesten eller programmet, der bruger filen.
Sådan rettes almindelige Regsvr32-fejl
Her er en fejl, du kan se, når du forsøger at registrere en DLL-fil:
Modulet blev indlæst, men opkaldet til DllRegisterServer mislykkedes med fejlkode 0x80070005.
Dette er typisk et tilladelsesproblem. Hvis kørsel af en forhøjet kommandoprompt stadig ikke lader dig registrere DLL-filen, kan selve filen være blokeret. Tjek afsnittet Sikkerhed på fanen Generelt i filens egenskabsvindue.
Et andet muligt problem kunne være, at du ikke har de korrekte tilladelser til at bruge filen.
En lignende fejlmeddelelse er formuleret som den nedenfor. Denne fejl betyder typisk, at DLL'en ikke bruges som en COM DLL til nogen applikation på computeren, hvilket betyder, at der ikke er behov for at registrere den.
Modulet blev indlæst, men indgangspunktet DllRegisterServer blev ikke fundet.
Her er endnu en regsvr32-fejlmeddelelse:
Modulet kunne ikke indlæses. Sørg for, at binærfilen er gemt på den angivne sti, eller fejlret den for at kontrollere, om der er problemer med de binære eller afhængige. DLL-filer. Det angivne modul kunne ikke findes.
Den særlige fejl kan skyldes en manglende afhængighed, i hvilket tilfælde du kan bruge Dependency Walker til at se en liste over alle de afhængigheder, som DLL-filen kræver, da der muligvis mangler en, som du skal have i orden for at DLL'en kan registreres korrekt.
Sørg også for, at stien til DLL-filen er stavet rigtigt. Syntaksen for kommandoen er meget vigtig; der kan opstå en fejl, hvis den ikke er indtastet korrekt.
Nogle DLL-filer skal muligvis have deres placering omgivet af anførselstegn som denne:
"C:\Users\Admin User\Programs\myfile.dll"
Hvor er Regsvr32.exe gemt?
32-bit versioner af Windows (XP og nyere) føj Microsoft Register Server-værktøjet til denne mappe, når Windows først installeres: %systemroot%\System32\.
64-bit versioner af Windows gemmer regsvr32.exe-filen ikke kun der, men også her: %systemroot%\SysWoW64\.