Главная » Тарифы » Зарегистрировать файл dll windows 10. Установка и регистрация библиотек DLL в Windows. Почему возникает ошибка при обращении к DLL

Зарегистрировать файл dll windows 10. Установка и регистрация библиотек DLL в Windows. Почему возникает ошибка при обращении к DLL

Пользователи спрашивают о том, как зарегистрировать dll файл в Windows 7 и 8. Обычно после того, как столкнулись с ошибками наподобие «Запуск программы невозможен, так как нужная dll отсутствует на компьютере». Об этом и поговорим.

На самом деле, регистрация библиотеки в системе не такая уж и сложная задача (покажу целых три вариации одного способа) - по сути, необходим лишь один шаг. Единственное обязательное требование - наличие у вас прав администратора Windows.

Однако есть некоторые нюансы - например, даже успешная регистрация DLL не обязательно избавляет вас от ошибки «библиотека отсутствует на компьютере», а появление ошибки RegSvr32 с сообщением о том, что модуль не совместим с версией Windows на этом компьютере или точка входа DLLRegisterServer не найдена, не говорит о том, что вы что-то делаете не так (о чем это говорит разъясню в конце статьи).

Три способа регистрации DLL в ОС

Описывая дальнейшие шаги, я исхожу из того, что вы нашли, куда нужно скопировать вашу библиотеку и DLL уже лежит в папку System32 или SysWOW64 (а возможно, где-то еще, если ей там следует находиться).

Примечание: ниже будет описано, как зарегистрировать DLL библиотеку с помощью regsvr32.exe, однако обращаю ваше внимание на то, что если у вас 64-разрядная система, то у вас есть два regsvr32.exe - один в папке C:\Windows \SysWOW64, второй - C:\Windows\System32. И это разные файлы, причем 64-бит находится в папке System32. Рекомендую в каждом из способов использовать полный путь к regsvr32.exe, а не просто имя файла, как у меня показано в примерах.

Первый способ описывается в Интернете чаще других и состоит в следующем:

    Нажмите клавиши Windows + R или в меню Пуск Windows 7 выберите пункт «Выполнить» (если, конечно, у вас включено его отображение).Введите regsvr32.exe путь_к_файлу_dllНажмите Ок или Enter.

После этого, если все прошло успешно вы должны будете увидеть сообщение о том, что библиотека была успешно зарегистрирована. Но, с большой вероятностью увидите другое сообщение - Модуль загружен, но точка входа DllRegisterServer не найдена и стоит проверить, что ваша DLL является правильным файлом (об этом, как я уже говорил, напишу позже).

Второй способ состоит в запуске командной строки от имени администратора и ввода все той же команды из предыдущего пункта.

    Запустите командную строку от имени Администратора. В Windows 8 можно нажать клавиши Win+X, а затем выбрать нужный пункт меню. В Windows 7 вы можете найти командную строку в меню Пуск, кликнуть по ней правой кнопкой мыши и выбрать пункт «Запуск от имени администратора».Введите команду regsvr32.exe путь_к_библиотеке_dll (пример вы можете видеть на скриншоте).

Опять же, вероятно, что вам не удастся зарегистрировать DLL в системе.

И последний способ, который также может пригодиться в некоторых случаях:

    Кликните правой кнопкой мыши по DLL, которую нужно зарегистрировать и выберите пункт меню «Открыть с помощью».Нажмите «Обзор» и найдите файл regsvr32.exe в папке Windows/System32 или Windows/SysWow64, откройте DLL с помощью него.

Суть всех описанных способов зарегистрировать DLL в системе одна и та же, просто несколько разные способы запуска одной и той же команды - кому что удобнее. А теперь о том, почему у вас ничего не получается.

Почему не удается зарегистрировать DLL

Responsive2{width:300px;height:300px}@media(min-width: 500px){.responsive2{width:336px;height:280px}}

Итак, у вас отсутствует какой-то файл DLL, из-за чего при запуске игры или вы видите ошибку, вы скачали этот файл из Интернета и пробуете зарегистрировать, но либо точка входа DllRegisterServer, либо модуль не совместим с текущей версией Windows, а может и что-то еще, то есть регистрация DLL невозможно.

    Не все файлы DLL предназначены для того, чтобы их регистрировали. Для того, чтобы его можно было зарегистрировать данным способом, он должен иметь поддержку той самой функции DllRegisterServer. Иногда ошибка бывает также вызвана тем, что библиотека уже зарегистрирована. Некоторые сайты, предлагающие скачать DLL, содержат по факту, файлы-пустышки с искомым вами именем и их невозможно зарегистрировать, так как на самом деле это не библиотека.

А теперь о том, как это исправить:

    Если вы программист и регистрируете свою DLL, попробуйте regasm. exeЕсли вы пользователь и у вас что-то не запускается с сообщением о том, что DLL отсутствует на компьютере - поищите в Интернете, что это за файл, а не где его скачать. Обычно, зная это, вы можете скачать официальный установщик, который установит оригинальные библиотеки и зарегистрирует их в системе - например, для всех файлов с именем, начинающегося с d3d достаточно поставить DirectX с официального сайта , для msvc - одну из версий Visual Studio Redistributable. (А если не запускается какая-то игра с торрента, то загляните-ка в отчеты антивируса, он мог удалить нужные DLL, это часто бывает с некоторыми модифицированными библиотеками).Обычно, вместо регистрации DLL срабатывает размещение файла в одной папке с исполняемым файлом exe, который требует эту библиотеку.

На этом завершаю, надеюсь, что-то стало более ясно, чем было.

Обычно пользователи пытаются зарегистрировать динамическую библиотеку только в том случае, если какая-либо программа требует ее для запуска и не работает без нее. В остальных случаях это редко используется и практически не нужно обычному пользователю. Однако, сделать это не так уж и сложно, главное обладать правами администратора на своем аккаунте. О том, как именно это сделать и будет рассказано в данной статье.

Несколько способов регистрации динамической библиотеки

Первым делом, непосредственно перед регистрацией, нужно переместить скачанный или найденный файл с расширением dll в нужную папку. Обычно это System32 или SysWOW64 . Лучше всего будет посмотреть необходимое местоположение для каждого конкретного файла в глобальной сети.

У пользователей 64 разрядной системы, файл regsrv32. exe присутствует не только в папке windows, в каталоге System32, но и SysWOW64. Однако, утилита для 64 разрядных систем находится все также в первой папке System32. Во избежание путаницы и неправильно срабатывания команд, тем, кто использует 64 разрядную виндовс, лучше писать в операторах вместо regsrv32.exe, полный путь к этому файлу.

Первый способ заключается в том, чтобы запустить приложение «Выполнить », через пуск или сочетанием Win+R. И написать в ней regsvr32.exe полный_путь_к_файлу . Увидеть пример такого оператора можно на изображении.

После выполнения команды можно получить сообщение о том, что все прошло успешно, однако чаще всего возникают ошибки, наподобие изображенной на картинке.

Второй метод добавления динамической библиотеки включает в себя использование консоли , запущенной от имени администратор. Найти ее проще всего через меню пуск. В ней нужно будет ввести точно такую же команду, как и в прошлом методе.

Оператор отображен на изображении. Здесь тоже может произойти удачная регистрация или же будет выдано сообщение о сбое.

Третий способ представляет собой, по сути, то же самое. Нужно клацнуть пкм по файлу библиотеки, выбрать строку в меню «Открыть с помощью » и в этой утилите указать полный путь до исполняемого файла, который располагается в папке windows/system32 или syswow64.

Возможные ошибки при регистрации

В основном ошибки возникают в нескольких случаях. В первом случае ошибка возникает из-за того, что такой файл уже зарегистрирован или же, в принципе не предназначен для регистрации. Второй вариант подразумевает то, что пользователь скачал с какого-то сайта обычный файл (хорошо, если не нахватал в процессе вирусов), который обладает тем же именем и расширением, что и требуемый, но на самом деле является всего лишь пустышкой.

Есть несколько способов добавить требуемый файл.

  • Если вы занимаете программированием и создали свою динамическую библиотеку, то для ее регистрации есть специальные утилиты (regasm.exe).
  • В другом случае лучше всего будет выполнить поиск по имени отсутствующего файла и выяснить в какой набор программ он входит. Например, библиотеки, чье имя начинается с d3d, являются часть DirectX и будут добавлены при его установке. Также может быть и с другими данными, нужно будет найти программу, скачать и установить ее целиком, а не отдельные библиотеки из нее. В таком случае утилита выполнит регистрацию сама и все будет работать.
  • Можно поместить найденный файл dll в один каталог с исполняемым файлом той утилиты, которая ее требует для запуска. Это так же может сработать.
  • В случае запуска игр и утилит, которые были скачаны из интернета, стоит также проверить отчеты своего антивируса. Вполне возможно, что он удалил нужный файл при установке или не дает приложению к нему обратиться. Если так и пользователь доверяет программе, то можно выполнить переустановку или запуск с отключенным антивирусом.

Установка игры или тяжелого приложения подразумевает автоматическую инсталляцию и регистрацию необходимых библиотек DLL в операционной системе windows. DLL – это динамические библиотеки, обращение к которым многократно может идти от нескольких приложений. Если при попытке обращения со стороны игры или программы к определенной библиотеке DLL возникла ошибка, пользователь увидит сообщение «точка входа dllregisterserver не найдена» или «запуск невозможен, отсутствует.dll файл». Эти и другие ошибки, сообщающие о проблемах при обращении к динамической библиотеке, можно устранить, если самостоятельно зарегистрировать нужный файл DLL в windows.

Почему возникает ошибка при обращении к DLL

Библиотеки DLL добавляются в операционную систему при обновлении windows и при установке приложений. Исходя из этого, можно выделить следующие основные причины, почему возникает ошибка, сообщающая об отсутствии или проблемах с DLL файлом:

  • DLL библиотека не была установлена. Причин этому может быть две – windows не обновлен до актуальной версии, а библиотека поставляется с одним из последних обновлений, или игра/приложение при установке по некоторым причинам не произвела инсталляцию и регистрацию новых библиотек DLL.Обратите внимание: Чаще всего в установочные файлы приложения включены все необходимые библиотеки DLL, и разработчики не надеются, что на компьютере уже ранее были установлены необходимые компоненты.
  • Повреждение библиотек DLL. Данная проблема чаще всего возникает, если библиотеки DLL были повреждены вирусным программным обеспечением или неосторожными действиями пользователя, например, внесением изменений в реестр, которые привели к повреждению динамических библиотек.

Большая часть библиотек DLL устанавливается на компьютер вместе с DirectX, поэтому если при установке игры или приложения возникает предложение обновить/установить DirectX, от него не нужно отказываться, иначе велик риск появления ошибки «запуск невозможен, отсутствует.dll файл».

Как зарегистрировать DLL в windows

Если по некоторым причинам в windows отсутствует библиотека DLL, необходимая для запуска игр и приложений, пользователь может самостоятельно ее зарегистрировать. Сделать это возможно двумя способами, предварительно загрузив на компьютер необходимую библиотеку DLL.

Регистрация DLL с помощью командной строки

Чтобы зарегистрировать имеющуюся на компьютере библиотеку DLL через командную строку, проделайте следующие действия:

  1. Запустите командную строку от имени администратора;
  2. В открывшемся окне пропишите команду: regsvr32.exe путь_к_библиотеке_DLL

    Вместо «путь_к_библиотеке_DLL» напишите полный путь до библиотеки, например: C:/windows/system32/comctl32.dll

  3. Нажмите Enter, после чего произойдет регистрация библиотеки DLL.

Регистрация DLL с помощью строки «Выполнить»

Регистрация DLL через строку «Выполнить» практически ничем не отличается от действий с командной строкой. Пользователю необходимо:


Что делать, если не удается зарегистрировать библиотеку DLL

Возможна ситуация, когда windows выдаст ошибку на команду по регистрации библиотеки, в которой указано, что модуль загружен, но точка входа DllRegisterserver не найдена. Вероятны и другие вариации схожих ошибок, из-за которых не удается зарегистрировать библиотеку DLL. Возникают такие ошибки по следующим причинам:

  • Ряд библиотек DLL не предназначены для регистрации, и в них отсутствует подобная возможность;
  • Библиотека уже зарегистрирована системой. Если возникают ошибки при обращении к ней, вероятнее всего она заражена вирусом или повреждена;
  • Неправильный DLL файл. Возможны ситуации, когда DLL-файлы изначально повреждены или не содержат в себе нужных компонентов;
  • DLL не совместим с текущей версией windows.

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

В редких ситуациях проблемы с регистрацией библиотеки DLL могут возникать, если она не находится в одной папке с исполняющим файлом.exe компонента или приложения. В таком случае нужно переместить библиотеку в папку с исполняющим файлом и попробовать вновь ее зарегистрировать.

OkeyGeek.ru

Регистрируем файл DLL в ОС windows

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

Варианты решения проблемы

Имеется несколько методов, позволяющих устранить данную проблему. Рассмотрим каждый из них подробнее.

Способ 1: OCX/DLL Manager

OCX/DLL Manager – это маленькая программа которая может помочь зарегистрировать библиотеку или файл OCX.

Загрузить программу OCX/DLL Manager

Для этого вам нужно будет:

  1. Нажать на пункт меню «Register OCX/DLL».
  2. Выбрать тип файла, который будете регистрировать.
  3. При помощи кнопки «Browse» указать местоположение DLL.
  4. Нажать на кнопку «Register» и программа сама зарегистрирует файл.

OCX/DLL Manager также умеет отменять регистрацию библиотеки, для этого понадобится выбрать в меню пункт «Unregister OCX/DLL» и в последствии проделать все те же операции, как и в первом случае. Функция отмены может вам понадобиться для сравнения результатов при активированном файле и при отключенном, а также в процессе удаления некоторых компьютерных вирусов.

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

Способ 2: Меню «Выполнить»

Можно зарегистрировать DLL, используя команду «Выполнить» в стартовом меню операционной системы windows. Для этого нужно будет произвести следующие действия:


Способ 3: Командная строка

Регистрация файла через командную строку не сильно отличается от второго варианта:

  1. Выберите команду «Выполнить» в меню «Пуск».
  2. Впишите в открывшемся поле для ввода cmd.
  3. Нажмите «Enter».

Перед вами появится окно, в котором нужно будет вводить те же команды, что и во втором варианте.

Надо отметить, что у окна командной строки имеется функция вставки скопированного текста (для удобства). Найти это меню можно, нажав правой кнопкой на пиктограмме в левом верхнем углу.

Способ 4: Открыть с помощью


Возможные ошибки

«Файл не совместим с установленной версией windows» - это означает, что вы, скорее всего, пытаетесь зарегистрировать 64-разрядную DLL в 32-битной системе или наоборот. Воспользуйтесь соответствующей командой, описанной во втором способе.

«Точка входа не найдена» - не все библиотеки DLL можно зарегистрировать, некоторые из них просто не поддерживают команду DllRegisterServer. Также, возникновение ошибки может быть вызвано тем, что файл уже зарегистрирован системой. Существуют сайты, распространяющие файлы, которые в реальности не являются библиотеками. В таком случае, естественно, зарегистрировать ничего не выйдет.

В заключение нужно сказать, что суть всех предложенных вариантов одна и та же - это просто разные методы запуска команды регистрации - кому как удобнее.

Мы рады, что смогли помочь Вам в решении проблемы.

Опрос: помогла ли вам эта статья?

Да Нет

lumpics.ru

Как зарегистрировать DLL: три способа

Порой при попытке запустить игру или приложение на компьютере выдается ошибка, что данный DLL-файл не найден. Факт в том, что этот файл может находиться у вас на компьютере, но он попросту не зарегистрирован. В этой статье мы как раз поговорим о том, как зарегистрировать DLL в windows 7. Сделаем акцент именно на седьмой версии windows, но, вполне возможно, что DLL зарегистрируется и на других версиях. Итак, приступим.

Первый способ регистрации DLL

Перед началом регистрации стоит сделать ремарку и сказать, что способов всего три, но каждый из них практически аналогичен остальным, так что советуем дочитать статью до конца, после чего сделать выбор, каким способом пользоваться. Ну а теперь перейдем непосредственно к тому, как зарегистрировать DLL.

Изначально стоит сказать, что все манипуляции с регистрацией DLL-файла стоит проводить лишь в том случае, когда этот самый файл находится там, где он должен быть. Чаще всего это папка system32. В примере именно эту папку мы и будем представлять.

Сейчас поговорим о самом распространенном способе, как можно зарегистрировать DLL, по крайней мере, он в интернете встречается чаще всего. Он довольно прост, так что у пользователя не должен вызывать проблем.

  1. Вам нужно попасть в окно "Выполнить". Его можно открыть несколькими путями. В меню "Пуск" пройти по пути "Все программы → Стандартные" и там уже выбрать "Выполнить". Можно также в том же меню "Пуск" совершить поиск с названием утилиты. Но самый простой способ - это нажать клавиши Win+R.
  2. Когда окно открыто, в поле для ввода нужно прописать команду "regsvr32.exe", после этого указать путь к файлу, который нужно зарегистрировать.
  3. Осталось нажать лишь кнопку "ОК".

Просим обратить внимание на то, что путь к файлу должен указываться полностью. Начиная с диска C. Например: regsvr32.exe c: windows /system32/openal32.dll.

В этом случае после нажатия кнопки "ОК" есть два варианта развития событий. Первый подразумевает успех, в этом случае вам будет показано соответствующее сообщение. Или неудача, вылетит соответствующее окно.

Это был первый способ, как зарегистрировать DLL, но напоминаем, что их всего три, поэтому двигаемся дальше.

Второй способ регистрации DLL

Второй способ практически ничем не отличается, лишь местом действий. Вам нужно попасть в утилиту "Командная строка", сделать это можно также несколькими способами: или в меню "Пуск" в папке стандартные открыть одноименную программу, или вызвав окно "Выполнить", ввести команду "cmd". Решать только вам.

Теперь перед вами открыта командная строка, в ней нужно ввести абсолютно такие же данные, которые вводились в первом способе. То есть изначально указать программу, которая будет работать с dll (regsvr32.exe), а затем путь к файлу.

Как видим, второй способ, как зарегистрировать DLL, практически ничем не отличается от первого, о чем и говорилось в начале статьи. Но вот третий имеет более заметные отличия, поэтому перейдем к нему.

Третий способ регистрации DLL

Этот способ, скорее всего, окажется более простым для рядового пользователя, поэтому начнем его рассматривать.

Вам необходимо всего-навсего открыть DLL-файл с помощью regsvr32.exe. Вот как это сделать:

  1. На нужном DLL-файле нажмите ПКМ.
  2. В меню выберите "Открыть с помощью...".
  3. В окошке найдите и нажмите кнопку "Обзор".
  4. Проложите путь к файлу regsvr32.exe, он находится в папке System32, которая находится в папке windows на диске C.
  5. Нажмите "Открыть".

Вот и все, теперь вы знаете аж три способа, что нужно делать, когда появляется ошибка DLL.

fb.ru

Регистрация библиотеки DLL. Что и как делать?

1. Скопируйте скаченну библиотеку в нужную системную директорию. (это либо system32, либо SysWOW64)*

* в какую директорию копировать библиотеки зависит от разрядности приложения. Если вы точно не знаете в какую папку копировать, копируйте в обе J

2. Скачайте архив внизу поста, разархивируйте, запустите файл reg.bat с правами администратора, выберите нужную вам разрядность,нажмите Enter и вставьте имя библиотеки, которую вы скопировали в системную директорию. Все должно пройти успешно и Вы увидите данное сообщение.

Если же увидите такое сообщение

То выберите другую разрядность и попытайтесь снова провести регистрацию. Все должно пройти успешно.

P.S. Если необходимо зарегистрировать библиотеку,которая находится в другом каталоге(не системном), то в имени библиотеки необходимо указать полный путь к библиотеке.

Например C:\Program Files\1Cv77\BIN\V7PLUS.dll

easy-comp.ru

Регистрация DLL в windows

Очень часто у юзеров возникает вопрос, как зарегистрировать DLL в седьмой или восьмой версии windows. Как правило, этот вопрос появляется после того, как система сообщает пользователю, что на ПК отсутствует необходимая библиотека.

По правде говоря, зарегистрировать библиотеку довольно просто – необходимо выполнить всего один шаг. Однако, для выполнения этого необходимо обладать правами администратора.

Но в этом есть некоторые нюансы. К примеру, в случае успешной регистрации DLL ошибка отсутствия нужной библиотеки может не пропасть. Кроме того, может возникнуть ошибка RegSvr32 и уведомление, что модуль не способен работать на ПК с данной версией операционки. Также может сообщаться, что точка доступа DLLRegisterServer не обнаружена. Это не свидетельствует о том, что были выполнены неправильные действия.

Три метода зарегистрировать DLL в ОС Все описанные ниже действия, подразумевают то, что место для копирования библиотеки было найдено и DLL расположен в директории System32 или SysWOW64 или в другом месте, где он должен быть.

Все манипуляции по регистрации DLL будут выполняться с использованием regsvr32.exe, но тут необходимо обратить внимание, что при применении 64-битной системы этот файл может располагаться в двух директориях: SysWOW64 и System32. Стоит отметить, что эти файлы разные, при этом 64-бит располагается в директории System32. Рекомендуется в каждом случае писать путь к regsvr32.exe, а не только название файла.

Первый метод довольно распространенный, и его можно часто встретить в интернете. Он состоит из нескольких манипуляций. Изначально необходимо нажать Win+R, а потом в окне «Выполнить» следует прописать regsvr32.exe путь_к_файлу_dll и нажать OK. Кроме того, «Выполнить» можно отыскать в меню «Пуск», если оно активировано.

Затем, при удачном выполнении на экране должно появиться оповещение о том, что регистрация библиотеки прошла успешно. Однако, скорее всего, появится уведомление, что модуль загрузился, но точка доступа DllRegisterServer отсутствует и необходимо удостовериться, что DLL – нужный файл.

Следующий метод подразумевает запуск строки команд под администратором и написания такой же команды, что и в вышеописанном методе. Нужно открыть строку команд. В «восьмерке» для этого нужно нажать Win+X, а потом указать необходимый пункт. В «семерке» строку команд можно отыскать в «Пуске». Требуется щелкнуть по ней ПКМ и указать «Запуск от имени администратора».

Затем следует ввести regsvr32.exe путь_к_dll, как и в прошлом методе. Однако, регистрация, скорее всего, не пройдет.

Кроме того, существует метод, который понадобится в редких случаях. Требуется щелкнуть ПКМ по DLL, подлежащей регистрации, и указать «Открыть с помощью». После этого следует кликнуть «Обзор» и в директориях System32 или SysWow64 отыскать regsvr32.exe, и с его помощью запустить DLL.

Модель многокомпонентных объектов (C omponent O bject M odel - СОМ ) является основным средством взаимодействия программ любых типов: библиотек, приложений, системного программного обеспечения и т.п. и определяет стандартный механизм, с помощью которого одна часть программного обеспечения (сервер) предоставляет свои сервисы другой (клиент) , что обеспечивается применением определенных протоколов взаимодействия между ними (между клиентом и сервером). В качестве сервера может использоваться динамически подключаемая библиотека (DLL), подгружаемая во время работы приложения, либо отдельный самостоятельный процесс, который может быть компонентом прикладной или системной программы, или даже процесс, выполняющийся на другом компьютере. Для нахождения нужного клиенту сервера, используется специальная информация из реестра Windows, которая формируется в при регистрации сервера в системе, чаще всего, в виде модуля динамически загружаемой библиотеки DLL. Регистрация необходима, поскольку программы работают не с самими файлами DLL, OCX, ACX, EXE, а с объектами, представляющими определенный набор программных интерфейсов. Для регистрации DLL используется следующие разделы реестра:

HKLM\SOFTWARE\Classes\CLSID - при регистрации COM-объектов библиотек для всех пользователей системы;

HKCU\SOFTWARE\Classes\CLSID - при регистрации COM-объектов библиотек только лишь для текущего пользователя;

HKLM\SOFTWARE\Wow6432Node\Classes\CLSID - для регистрации 32-битных DLL в 64-битных ОС Windows;

При регистрации, в указанном разделе реестра создается ключ с именем, эквивалентным глобальному уникальному идентификатору GUID регистрируемого оюъекта. GUID применительно к СОМ, является идентификатором класса. Чтобы отличать идентификаторы классов от других идентификаторов, для них используют подраздел реестра с именем CLSID . GUID представляет собой 128-разядное 16-ричное значение, заключенное в фигурные скобки:

{23170F69-40C1-278A- 1000-000100020000

При регистрации в реестре создается подраздел с именем, соответствующим идентификатору GUID, содержащий информацию о пути и имени исполняемого файла, его версии, времени регистрации, сведения о разработчике, и прочие параметры, определяющие специфические свойства регистрируемого объекта. Удаление или повреждение данных регистрации приводит к неработоспособности зарегистрированного компонента системы или прикладной программы, что, как правило, сопровождается сообщением об ошибке поиска DLL и предложением переустановить проблемное программное обеспечение. Вместо переустановки вполне можно обойтись перерегистрацией поврежденного объекта с помощью утилиты regsvr32.exe , имеющейся во всех версиях операционных систем семейства 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 ] DLL-файл

/u - - вызывает DllUnInstall, отменяет регистрацию сервера

/i - вызывает DllInstall, передавая ей в параметре необязательную строку_команд;

/n - не вызывает DllRegisterServer; может использоваться с ключом /I;

/s – "тихий" режим; окна сообщений не отображаются;

Примеры использования regsvr32.exe :

regsvr32 /u "C:\Program Files\7-Zip\7-zip32.dll" - отменить регистрацию указанной DLL. При успешной отмене отображается сообщение:

Для подавления вывода сообщения, используется параметр /s :

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 :

%SystemRoot%\syswow64\regsvr32.exe

Или без использования переменных окружения:

C:\Windows\System32\regsvr32.exe

В качестве дополнительного программного средства для управления регистрацией объектов COM, очень удобно пользоваться бесплатной утилитой от Nirsoft RegDLLView.exe . Программа не требует установки в системе, имеет небольшой размер и позволяет:

Получить в удобном виде список всех зарегистрированных в системе объектов.

Выполнить регистрацию или отмену регистрации выбранных объектов.

Создать reg-файл для выполнения отмены регистрации одной или нескольких DLL.

Зарегистрировать или перерегистрировать указанный файл.

Кроме того, имеется возможность проверить цифровые подписи исполняемых файлов зарегистрированных объектов, просмотреть или изменить их свойства, а также выполнить запуск редактора реестра с отображением информации выбранного GUID через пункт контекстного меню ”Open in Regedit”, вызываемого правой кнопкой мышки.



Предыдущая статья: Следующая статья:

© 2015 .
О сайте | Контакты
| Карта сайта