Я спробував використати наступний код:
cd c:\windows\system32
regsvr32.exe dllname.ax
Але це не працює для мене. Як мені зареєструвати файл DLL в Windows 7 з 64-бітним процесором?
Ну, ви не вказуєте, чи це 32- або 64-розрядна бібліотека, і ви не включаєте повідомлення про помилку, але я здогадуюсь, що це та сама проблема, яка описана в цій статті KB: Повідомлення про помилку при запуску Regsvr32.exe в 64-розрядній Windows.
Цитата з цієї статті:
Така поведінка виникає через те, що файл Regsvr32.exe в папці System32 має 64-бітну версію. Коли ви запускаєте Regsvr32 для реєстрації DLL, за замовчуванням використовується 64-розрядна версія.
Рішення з тієї статті:
Щоб вирішити цю проблему, запустіть Regsvr32.exe з папки %SystemRoot%\Syswow64 папки. Наприклад, для реєстрації DLL введіть наступні команди:
cd \windows\syswow64
regsvr32 c:\filename.dll
Введіть в командному рядку regsvr32 name.dll
(виконується в підвищеному режимі!) і натисніть "Enter." Зверніть увагу, що name.dll
слід замінити на ім'я DLL, яку ви хочете зареєструвати. Наприклад, якщо Ви хочете зареєструвати бібліотеку iexplore.dll, введіть regsvr32 iexplore.dll
.
Знання повідомлення про помилку було б досить цінним. Воно призначене для надання інформації, навіть якщо вона не має ніякого сенсу для вас, але має сенс для нас. Змушений здогадуватися, я б сказав, що DLL є 32-розрядним фільтром DirectX. В такому випадку це має бути правильний спосіб дій:
cd c:\windows\syswow64
move ..\system32\dllname.ax .
regsvr32.exe dllname.ax
Це має бути запущено в підвищеному командному рядку, щоб UAC не міг зупинити необхідний доступ до реєстру. Задати додаткові питання про це можна на сайті superuser.com