Как зарегистрировать файл DLL в Windows 7?

10

Эй, я попытался добавить файл DLL в Windows 7, скопировав в папку system32, но я не смог, так как доступ был запрещен. На самом деле существует существующий файл DLL, и я пытаюсь заменить его. Как я могу сделать это в Windows 7?

Джонес Томас
источник
Вы копируете это как Администратор? Вы пытаетесь заменить известный системный файл Windows? Вы смотрели на использование regsvr32 для регистрации DLL?
Ƭᴇcʜιᴇ007

Ответы:

10

Чтобы зарегистрировать DLL, вы открываете окно командной строки от имени администратора и затем используете regsvr32 /i <dll_name>.

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

  1. ren c: \ windows \ system32 \ filename.dll c: \ windows \ system32 \ filename.old
  2. скопировать c: \ randomlocation \ filename.dll c: \ windows \ system32 \ filename.dll

Если файл используется, вы должны делать это в безопасном режиме, только из командной строки. Если вы подключите свою систему, вы можете удалить dll, которую вы скопировали, и переименовать .old обратно в .dll.

KCotreau
источник
1
Нежное напоминание:
обратите
7

Вот полное использование regsvr32.

использование regsvr32

bzsparks
источник
Это не поможет с «Отказано в доступе», которое получает Джон,
Бен Фойгт
2

Сначала отмените регистрацию существующего DLL-файла (с помощью /uпереключателя), а затем зарегистрируйте DLL. Таким образом, процедура отмены регистрации очистит существующие настройки, что часто помогает при повторной регистрации.

Chedy
источник
Это хороший ответ в отношении регистрации DLL, но вопрос в том, чтобы скопировать файл в System32.
Synetech
2

Чтобы зарегистрировать comm .dll или .ocx в 32-битной Windows 7, выполните следующие действия:

  1. Скопируйте .dll или .ocx в c:\windows\system32

  2. Введите cmdв меню « Выполнить» , он будет искать cmd.exe, щелкните правой кнопкой мыши и выберите « Запуск от имени администратора».

  3. Это покажет подсказку на c:\windows\system32

  4. Тип regsvr32 ocxname.ocxдля регистрации .ocx

    или

    введите regsvr32 dllname.dllдля регистрации .dll

Калима
источник
1

regsvr32, расположенный в папке SysWow64, предназначен для 32-битных DLL

Это странное название от Microsoft: WOW64 означает «windows [32bit] на windows 64bit», тот, который находится в system32, предназначен для 64-битных dll.

FredPonch
источник
0

Обычно есть две проблемы с regsvr32 в Windows 7:

  1. UAC
  2. Тот факт, что у вас может быть 64-битная ОС и файл dll, который вам нужно зарегистрировать, является 32-битной.

Чтобы обойти проблему «Отказано в доступе», запустите командную строку как администратор, в меню «Пуск» введите «cmd.exe», а затем щелкните правой кнопкой мыши запись «cmd.exe» и «Запуск от имени администратора».

Если библиотека DLL 32-разрядная и находится в 32-разрядной папке Windows, используйте 32-разрядную версию regsvr32 по адресу c: \ windows \ sysWOW64 \ regsvr32.exe

Питер Хандорф
источник
-1

Если у вас Windows 7 x64, а DLL, которую вы хотите зарегистрировать - x64, вы можете запустить regsvr32.exeиз нее C:\Windows\SysWOW64.

Пример:

C:\Windows\SysWOW64\regsvr32.exe C:\Windows\SysWOW64\StrmExt_x64.dll
Луис СаТаник
источник