Как зарегистрировать программу в windows 10
Обновлено: 07.07.2024
HKLM\SOFTWARE\Classes\CLSID - при регистрации COM-объектов библиотек для всех пользователей системы;
HKCU\SOFTWARE\Classes\CLSID - при регистрации COM-объектов библиотек только лишь для текущего пользователя;
HKLM\SOFTWARE\Wow6432Node\Classes\CLSID - для регистрации 32-битных DLL в 64-битных ОС Windows;
Утилита regsvr32.exe является стандартной программой командной строки для регистрации и отмены регистрации элементов управления OLE, ActiveX и библиотек DLL в реестре Windows. В 64-разрядных версиях Windows присутствуют две версии файла regsv32.exe :
- 64-разрядная версия в каталоге %systemroot%\System32 (обычно - C:\Windows\System32)
- 32-разрядная версия в каталоге %systemroot%\SysWoW64 (обычно – C:\Windows\SysWoW64)
Для работы утилиты требуются повышенные привилегии, поэтому окно командной строки должно вызываться с правами администратора ( ”Запуск от имени администратора”).
При запуске regsvr32.exe без параметров командной строки, либо при запуске с неверными параметрами, отображается подсказка:
Формат командной строки REGSVR32:
Regsvr32 [/u] [/s] [/n] [/i[:строка_команд]] DLL-файл
/u — - вызывает DllUnInstall, отменяет регистрацию сервера
/i — вызывает DllInstall, передавая ей в параметре необязательную строку_команд;
/n — не вызывает DllRegisterServer; может использоваться с ключом /I;
Примеры использования regsvr32.exe :
regsvr32 /u /s "C:\Program Files\7-Zip\7-zip.dll"
В результате выполнения данной команды, из контекстного меню Проводника Windows, вызываемого правой кнопкой мышки, исчезнет пункт архиватора 7-Zip. Для его восстановления необходимо выполнить регистрацию 7-zip.dll командой:
regsvr32 "C:\Program Files\7-Zip\7-zip.dll"
Необходимо не забывать о разрядности регистрируемых объектов в 64-разрядных версиях ОС. В случае необходимости регистрации 32-разрядного объекта, нужно явно указать путь для 32-битной редакции утилиты regsvr32 :
Или без использования переменных окружения:
В качестве дополнительного программного средства для управления регистрацией объектов COM, очень удобно пользоваться бесплатной утилитой от Nirsoft RegDLLView.exe . Программа не требует установки в системе, имеет небольшой размер и позволяет:
- Выполнить регистрацию или отмену регистрации выбранных объектов.
- Создать reg-файл для выполнения отмены регистрации одной или нескольких DLL.
- Зарегистрировать или перерегистрировать указанный файл.
Реестр операционной системы Windows является огромной базой данных, где хранятся настройки системы, информация о конфигурации компьютера. В нем фиксируются любые изменения в составе и структуре программного обеспечения вашего компьютера. Но случается, что какая-либо программа (особенно это касается игр) из-за некорректной установки в операционной системе либо по другим причинам остается не внесенной в реестр, и пользователь вынужден делать это вручную.
- Как прописать программу в реестре
- Где находится список автозагрузки в реестре windows
- Как внести файл в реестр
- Компьютер под управлением операционной системы Windows
Прежде чем что-либо изменить в реестре, создайте его резервную копию. Для этого нажмите левой клавишей мышки кнопку «Пуск» и в открывшемся меню запустите окно «Выполнить» . Открыть окно можно также, если нажать клавиши win+R. Затем введите в строку команду «regedit». Откроется редактор реестра. В разворачивающемся пункте меню «Файл» выберете команду «Экспорт». В открывшемся диалоговом окне выберете папку, где будет сохранен файл, введите его название (оно может быть любым) и поставьте переключатель в положение «Весь реестр». Нажмите «Сохранить».
Навигация по ветвям реестра подобна переходу к какой-либо папке в «Проводнике» и осуществляется щелчком по плюсикам, расположенным у названия. Найдите в левом окне значок папки с названием «HKEY_LOCAL_MACHINE», щелкните на значок плюс у названия. В развернувшемся списке подразделов найдите значок папки SOFTWARE и в свою очередь щелкните на плюсике или дважды на самом значке.
В развернувшемся списке найдите название интересующей вас программы и выделите его щелчком мыши. Еще раз проверьте в строке состояния (самый низ окна), в той ли ветви реестра вы находитесь. Там должна быть такая строка: «Мой компьютерHKEY_LOCAL_MACHINE SOFTWAREИмя_вашей_программы».
Перейдите в правое окно и щелкните по свободному месту правой кнопкой. Перейдите на пункт меню «Создать», и выберете затем «Строковый параметр». Задайте имя «InstallDir» новому ключу и нажмите Enter.
Операционные системы Windows 8.x и 10 включают в себя новый тип приложений (приложения Магазина Windows), которые имеют свойство постоянно ломаться. Под словом «ломаться» я подразумеваю вылет приложения сразу после запуска или же полный отказ от загрузки. Очевидным решением проблемы в данном случае является переустановка сломавшегося приложения, однако, весьма часто проблема остается даже после этого. Более того, далеко не все приложения в составе Windows 10 можно удалить, а значит, вариант решения проблемы путем переустановки для них не годится. Для таких случаев в системе предусмотрена возможность повторной регистрации приложений с помощью скрипта PowerShell. Обычно это позволяет вернуть проблемное приложение к жизни.
Я уже рассказывал о том, как разом перерегистрировать все современные/универсальные приложения в Windows 8.1 и Windows 10. Но что, если проблемы наблюдаются только с одним приложением, в то время как все остальные работают нормально? В этом пошаговом руководстве вы найдете командлеты, благородя которым вы можете повторно зарегистрировать только те приложения, которые у вас не работают.
1. Запустите PowerShell с правами администратора. Для этого в поле поиска на панели задач вводим команду powershell, делаем щелчок правой кнопкой мыши на Windows PowerShell в результатах поиска и жмем «Запустить от имени администратора».
Вам может быть интересно: Как убрать надпись пробная версия2. В окне консоли вводим команду Get-AppxPackage и жмем Enter.
Команда отобразит список всех установленных приложений Магазина Windows наряду с их техническими подробностями. В этом списке найдите приложение, которое нужно восстановить, а затем скопируйте полное имя его пакета (PackageFullName). У меня не работает Магазин, у которого PackageFullName выглядит так: Microsoft.WindowsStore_2015.25.15.0_x64__8wekyb3d8bbwe.
3. Теперь давайте перерегистрируем приложение. Для этого в окне PowerShell вводим следующую команду и жмем Enter:
Add-AppxPackage -register "C:\Program Files\WindowsApps\<PackageFullName>\appxmanifest.xml" –DisableDevelopmentMode
Замените <PackageFullName> полным именем пакета, который вы скопировали на предыдущем шаге. Если для системного диска вы используете другую букву, тогда вам также необходимо заменить C буквой вашего диска.
Например, в моем случае, чтобы перерегистрировать приложение Магазин, нужно использовать эту команду:
Add-AppxPackage -register "C:\Program Files\WindowsApps\ Microsoft.WindowsStore_2015.25.15.0_x64__8wekyb3d8bbwe\appxmanifest.xml" –DisableDevelopmentMode
Выполнение команды может завершиться ошибкой, как это было у меня. Тем не менее, это помогло решить мою проблему, и теперь Магазин запускается и работает.
P.S. В случае если вы хотите перерегистрировать все установленные приложения разом, используйте эту команду:
Среди частых вопросов пользователей, особенно после того, как они сталкиваются с тем, что какая-то из библиотек DLL отсутствует в Windows 10, Windows 11 или других версиях системы — как зарегистрировать DLL в соответствующей версии ОС.
В этой инструкции подробно о способах регистрации библиотек DLL в Windows x64 и x86 (32-бит) с помощью regsvr32.exe (и кратко о regasm.exe), о возможных нюансах и проблемах, которые могут возникнуть в процессе.
Дальнейшие шаги описаны в предположении, что DLL, которую нужно зарегистрировать, уже находится в нужном расположении: папке C:\Windows\System32, C:\Windows\SysWOW64 или, в некоторых случаях — отдельных папках программ, к которой относится соответствующая библиотека, например, для 1С — C:\Program Files\1cv8\номер_версии\bin (или Program Files x86 в случае 32-битной версии).
Прежде чем приступить к регистрации библиотеки, учитывайте следующие моменты:
- В x64 версиях Windows 64-битные DLL хранятся в System32, а 32-битные — в SysWOW64 (у некоторых начинающих пользователей бывает обратное предположение исходя из имён папок).
- Файлы DLL x64 и x86 (32-бит) — это разные файлы. И если прямого указания на разрядность в месте загрузки файла нет, то чаще это 32-битный файл (что не мешает ему работать в x64 системе), но это не всегда так.
- Для регистрации библиотеки DLL используется системный инструмент regsvr32.exe, который также доступен в двух версиях, которые лежат в папках System32 и SysWOW64 (в случае 64-битных систем). По умолчанию при описываемых далее действиях запускается x64 версия.
- 32-битным программам и играм (по умолчанию устанавливаются в Program Files x86 в 32-битных системах) для работы нужны 32-битные DLL, не зависимо от разрядности Windows.
Сам процесс регистрации в общем случае состоит из следующих шагов:
Почему не удается зарегистрировать DLL
Ошибка при регистрации с помощью regsvr32 вида «Точка входа DllRegisterServer не найдена» говорит о том, что эта библиотека DLL не поддерживает регистрацию описанным методом. Можно попробовать использовать вариант команды:
но с большой вероятностью и это не поможет.
У большинства домашних пользователей такая проблема возникает при регистрации файлов DLL для игр и программ, часто не вполне лицензионных, которые сообщили, что нужный файл DLL не обнаружен или отсутствует. Причем сами библиотеки DLL обычно скачаны со сторонних сайтов (и чаще всего имеют имена начинающиеся с «vc», «msvc» или «d3d»). А решение, как правило, простое — выяснить, частью какого набора компонентов является эта DLL и установить эти компоненты с помощью их собственного установщика. Более подробно проблема и подходы к решению описаны в инструкции Точка входа DllRegisterServer не найдена — причины и возможные решения.
Видео
Надеюсь, цель достигнута, а количество вопросов, связанных с регистрацией DLL в Windows, уменьшилось.
Читайте также: