Det här inlägget berättar hur du lägger till register- och avregistreringskommandon till högerklickmenyn för DLL- och OCX-filer i Windows Vista, 7, 8 och 10.
För att registrera en DLL- eller OCX-fil måste du vanligtvis köra regsvr32.exe från en upphöjd kommandotolken. Att registrera system-DLL från ett icke-förhöjat tillstånd kan orsaka fel. Försök till exempel att registrera systemmodulen JScript.dll från Start, Sökrutan (dvs. utan att höja den). Felet 0x80004005 eller 0x80007005 (“ACCESS IS DENIED”) ser du när du gör det.
Metod 1: Registrera DLL-filer via snabbmenyn - ”runas” verb
För att lägga till registerkommandot i snabbmenyn som kör kommandot Regsvr32.exe under förhöjda rättigheter kan du använda det speciella runas- verbet. Här är en REG-fil som jag skapade, lägger till runas verb för DLL- och OCX-filtyper i följande registernycklar:
HKEY_CLASSES_ROOT \ dllfile \ runas HKEY_CLASSES_ROOT \ ocxfile \ runas
- Ladda ner filen register_runas.reg och spara på Desktop.
- Högerklicka på filen och välj Slå samman.
- Klicka på Ja när du blir ombedd att bekräfta.
Nu bör du se kommandot Registrera (som administratör) i högerklickmenyn för DLL- och OCX-filtyper.
Metod 2: Ställ Regsvr32.exe på att alltid köra upphöjd
Eftersom du kan använda "runas" verb för bara ett objekt, för att lägga till ett "Avregistrera" kommando måste du använda en annan metod än ovan. Här är ett annat sätt att lägga till "Registrera" och "Avregistrera" kommandon till snabbmenyn för DLL-filer utan att använda "runas" verb.
Den här metoden instruerar systemet att alltid köra Regsvr32.exe upphöjd, genom att lägga till en AppCompatFlags\Layers
registerpost och implementera ”Register” och ”Avregistrera” postmenyn på vanligt sätt.
REG-fil
Windows registerredigerare version 5.00 [HKEY_CURRENT_USER \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ Layers] "C: \\ Windows \ \ System32 \\ regsvr32.exe" = "~ RUNASADMIN" [HKEY_CLASSES_ROOT \ DllFile \ Shell \ Register "HasLUAShield" = "" [HKEY_CLASSES_ROOT \ DllFile \ Shell \ Register \ command] @ = "C: \\ Windows \\ System32 \\ regsvr32.exe \"% 1 \ "" [HKEY_CLASSES_ROOT \ DllFile \ Shell \ Unregister] " HasLUAShield "=" "[HKEY_CLASSES_ROOT \ DllFile \ Shell \ Unregister \ command] @ =" C: \\ Windows \\ System32 \\ regsvr32.exe -u \ "% 1 \" "[HKEY_CLASSES_ROOT \ OcxFile \ Shell \ Register] "HasLUAShield" = "" [HKEY_CLASSES_ROOT \ OcxFile \ Shell \ Register \ command] @ = "C: \\ Windows \ \ System32 \\ regsvr32.exe \"% 1 \ "" [HKEY_CLASSES_ROOT \ OcxFile \ Shell \ Unregister] " HasLUAShield "=" "[HKEY_CLASSES_ROOT \ OcxFile \ Shell \ Unregister \ command] @ =" C: \\ Windows \ \ System32 \\ regsvr32.exe -u \ "% 1 \" "
Kopiera ovanstående rader till Notepad och spara filen med .reg förlängning. Dubbelklicka för att köra .reg-filen. Detta lägger till kommandona "Registrera" och "Avregistrera" till snabbmenyn för DLL- och OCX-filer.
För att ta bort (ångra) kommandona Registrera och avregistrera från snabbmenyn använder du följande .reg-fil:
Windows registerredigerare version 5.00 [HKEY_CURRENT_USER \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ Layers] "C: \\ Windows \ \ System32 \\ regsvr32.exe" = - [-HKEY_CLASSES_ROOT \ DllFile \ Shell \ Register] [- HKEY_CLASSES_ROOT \ DllFile \ Shell \ Unregister] [-HKEY_CLASSES_ROOT \ OcxFile \ Shell \ Register] [-HKEY_CLASSES_ROOT \ OcxFile \ Shell \ Unregister]
Det är allt!