Регистрация и отмена регистрации библиотек DLL, повышенных с помощью контекстного меню, вызываемого правой кнопкой мыши

click fraud protection

В этом посте рассказывается, как добавить команды регистрации и отмены регистрации в контекстное меню для файлов DLL и OCX в Windows Vista, 7, 8 и 10.

Чтобы зарегистрировать файл DLL или OCX, обычно требуется запустить regsvr32.exe из возвышенный Командная строка. Регистрация системных библиотек DLL из состояния без повышенных прав может вызвать ошибку. Например, попробуйте зарегистрировать системный модуль JScript.dll из Пуск в поле поиска (т. е. не поднимая его). Вы увидите ошибку 0x80004005 или 0x80007005 («В ДОСТУПЕ ОТКАЗАНО»), когда вы это сделаете.

regsvr32 ошибка 0x80004005

Метод 1. Зарегистрируйте библиотеки DLL через контекстное меню - глагол runas

Чтобы добавить регистр в контекстном меню, которое запустит Regsvr32.exe под повышенными правами можно воспользоваться специальным беги как глагол. Вот созданный мной REG-файл, который добавляет команду runas для типов файлов DLL и OCX в следующие разделы реестра:

HKEY_CLASSES_ROOT \ dllfile \ runas. HKEY_CLASSES_ROOT \ ocxfile \ runas
  1. Скачать файл register_runas.reg и сохраните на рабочий стол.
  2. Щелкните файл правой кнопкой мыши и выберите «Объединить».
  3. Нажмите да когда вас попросят подтвердить.

Теперь вы должны увидеть Зарегистрируйтесь (как администратор) в контекстном меню для типов файлов DLL и OCX.

зарегистрировать dll контекстное меню regsvr32

Метод 2. Настройте Regsvr32.exe на постоянный запуск с повышенными привилегиями

Поскольку вы можете использовать глагол «runas» только для одного элемента, чтобы добавить команду «Отменить регистрацию», вам нужно использовать другой метод, чем описанный выше. Вот еще один способ добавить команды «Зарегистрироваться» и «Отменить регистрацию» в контекстное меню для файлов DLL без использования команды «runas».

Этот метод указывает системе всегда запускать Regsvr32.exe с повышенными привилегиями, добавляя AppCompatFlags \ Layers запись в реестре и реализует пункты контекстного меню «Зарегистрировать» и «Отменить регистрацию» обычным образом.

REG файл

Редактор реестра Windows версии 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 \ ""

Скопируйте приведенные выше строки в Блокнот и сохраните файл с расширением .reg. Дважды щелкните, чтобы запустите файл .reg. Это добавляет команды «Зарегистрировать» и «Отменить регистрацию» в контекстное меню для файлов DLL и OCX.

зарегистрировать dll контекстное меню regsvr32

Чтобы удалить (отменить) команды Register и Unregister из контекстного меню, используйте следующий файл .reg:

Редактор реестра Windows версии 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]

Вот и все!


Одна небольшая просьба: если вам понравился этот пост, поделитесь, пожалуйста, этим?

Одна "крошечная" публикация от вас серьезно помогла бы росту этого блога. Несколько отличных предложений:
  • Приколи это!
  • Поделитесь этим в своем любимом блоге + Facebook, Reddit
  • Напишите об этом в Твиттере!
Так что большое спасибо за вашу поддержку, мой читатель. Это займет не более 10 секунд вашего времени. Кнопки «Поделиться» находятся прямо внизу. :)