Сервер реєстрації microsoft regsvr32 exe де знаходиться. REGSVR32 - реєстрація чи скасування реєстрації бібліотеки DLL у реєстрі Windows. Що робити, якщо не вдається зареєструвати бібліотеку DLL

Головна / Корисне ПЗ

З недавнього часу багато користувачів Windows 10/8/7 стали спостерігати зростання навантаження на процесор і диск через службу Regsvr32.exe, вона ж "Сервер реєстрації Microsoft". Аномалію легко відстежити через стандартний диспетчер завдань. У статті докладно розпишемо, що таке Regsvr32, чому він викликає високе навантаження на систему і як відключити проблемний процес.

Що це за процес?

Сервер реєстрації Microsoft – це системна утиліта, яка активується при установці або видаленні різних DLL-бібліотек у Віндовсі. Ці бібліотеки можуть належати як сторонньому софту, так і плановим системним оновленням. У звичайному режимі фонова робота Regsvr32.exe практично не помітна. Однак, після недавніх оновлень OS, з якими розробники знову облажалися, сервер реєстрації показує високе завантаження ЦП та Диску. Причому навантаження піднімається не тільки в момент сторонніх установок, а й під час простою ПК.

Як саме Regsvr32.exe вантажить процесор?

Якщо говорити про саме джерело аномального навантаження, то ним може бути будь-який DLL-файл, який завис і не може провантажитися в системі. Найчастіше проблема у фонових програмах, які прописані в автозавантаженні, або збійних оновленнях безпеки.

Варто зазначити, що сам процес Regsvr32.exe і раніше збоїв у Windows (7, 8 або 10), але проблема набула масового характеру саме з початку 2018 року. Швидше за все це пов'язано з тим, що корпорація Майкрософт почала ретельніше відстежувати комп'ютери зі застарілою версією оновлень безпеки та в добровільно-примусовому порядку їх встановлювати. У минулому матеріалі ми говорили про автоматичне завантаження програми, яка активує оновлення до версії 1709.

Як вимкнути навантаження сервера реєстрації?

Якщо говорити про видалення, то просто так стерти із системи службу regsvr32.exe не можна, все ж таки це системна опція. Але можна спробувати виявити джерело проблеми та вимкнути його. Ось що слід зробити одразу ж:

Визначаємо джерело збою Regsvr32.exe

Якщо всі вищенаведені напівзаходи не допомагають, тоді необхідно використовувати спеціалізований софт для виявлення проблемних файлів. Для цього можна зробити таке:


Після виявлення джерела зверніться до пошуку в інтернеті. Можливо, програма вимагає додаткових драйверів, або є її офіційна версія.

Висновок

На цьому все - тепер ви знаєте, що означає служба "Сервер реєстрації Microsoft" і з яких причин вона може вантажити процесор. Насамкінець хочу зауважити, що в особливо занедбаних випадках, замість regsvr32.exe може активувати вірус, тому через той же Диспетчер перевірте його розташування. Якщо ви потрапите НЕ за адресою C:\Windows\System32, то видаляйте його та проганяйте комп'ютер через антивірусні сканери (AdwCleaner, MalwareBytes, Dr.Web).

Не реєструється Dll, ActiveX під Windows 7 – що робити?

У звичних Windows до XP включно реєстрація Dll, ActiveX компонентів без проблем виконувалася командою regsvr32.

У Windows 7 у принципі те саме, але внесені деякі "удосконалення", через що звичний порядок дій нерідко не дає очікуваного результату. Наприклад:

Погодьтеся, дуже зрозуміле та інформативне повідомлення. Відмінний привід для розробника ОС – запропонувати користувачеві придбати випустити Windows 8, нову, ще більш удосконалену версію, де це повідомлення, можливо, переведуть на людську мову.

А саме: вікно терміналу (командного рядка cmd) слід відкривати командою "Запуск від імені адміністратора" (доступно натисканням правої кнопки миші).

Найчастіше це вирішує проблему.

Додаткові дії можуть знадобитися, якщо використовується 64-бітна версія ОС. Справа в тому, що програми в ній можуть бути не тільки 64бітними, а й 32 бітними. Причому більшість програм - 32бітні, бо користь від 64біт є тільки на ресурсомістких додатках.

Зокрема, клієнтська частина 1С (тобто та 1С, з якою працює користувач) є 32 бітним додатком. (От сервер 1С вже може бути як 32 бітним, так і 64бітним, але це стосується великих організацій, якщо у Вас 1С Бухгалтерія та 5 користувачів, то 99% що у Вас ніякого сервера 1С немає і все 32 бітне).

ActiveX компоненти також можуть бути 32 бітними або 64 бітними, причому повинна використовуватися та версія, розрядність якої відповідає додатку. OcvitaBarcode ActiveX є 32 бітною програмою.

Так ось, програми для реєстрації 32 бітних і 64 бітних ActiveX в Windows 6 64 бітної теж різні, але при цьому вони обидві називаються regsvr32.exe. (Як казав Козьма Прутков, "якщо на клітці зі слоном написано "буйвол", не вір очам своїм".) Тому, якщо Ви просто набираєте в командному рядку

regsvr32 якась.ocx

то теоретично має запуститися потрібна regsvr32, практично може запуститися будь-що. Навіщо так зроблено? ну все за тим же, якщо відразу зробити по-людськи, хто нову версію Windows купуватиме.

Тому для гарантованого запуску 32бітної regsvr32, слід у вікні терміналу набирати команду

c:\windows\syswow64\regsvr32.exe OcvitaBarcode.ocx

Якщо windows встановлена ​​над c:\windows, шлях природно, вказуємо який є. І пам'ятаємо, що вікно терміналу слід відчиняти від імені адміністратора.

При дотриманні вищевказаних правил 32бітні ActiveX, в т.ч. OcvitaBarcode ActiveX без проблем працюють у Windows 7:


Модель багатокомпонентних об'єктів ( 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, що викликається правою кнопкою мишки.

Файл DLL– це функціональний модуль, який можна використовувати кількома програмами за умови, що він зареєстрований.

Зазвичай операційні системи реєструють DLL у фоновому режимі, але іноді через пошкодження жорсткого диска, помилки при установці програмного забезпечення або зараження комп'ютерним вірусом може знадобитися зареєструвати файл DLL вручну.

Ця інструкція розповість, як виконати цю процедуру.

Спосіб 1
  • Натисніть кнопку Пуск
  • У текстовому полі "Знайти програми та файли" введіть:
    regsvr32 [повне_ім'я_файлу]
    Повне ім'я файлу за наявності прогалин у дорозі треба писати в лапках.

    Наприклад: regsvr32 "C:\Program Files (x86)\1cv77\BIN\v7plus.dll"

  • Натисніть клавішу Enter

Спосіб 2
Примітки
  1. При реєстрації файлів *.dll відбувається їх запис до Реєстру Windows. При цьому у гілці створюється відповідний параметр REG_DWORD із значенням 1.
  2. Використання команди regsvr32:
    regsvr32 ] DLL-файл
    /u
    – скасовує реєстрацію DLL
    /s– «тихий» режим – вікна повідомлень не відображаються
    /i– викликає DllInstall, передаючи параметром необов'язковий рядок_команд, при використанні з ключем /u викликає DLLUnInstall
    /n– не викликає DllRegisterServer. Може використовуватись із ключем /i.

Ознайомтеся із принципом роботи цього методу.Щоб зареєструвати DLL-файл, можна використовувати команду "regsvr" та ім'я DLL-файлу (якщо файл підтримує цю команду). Буде створено шлях від реєстру Windows до DLL-файлу, що спростить системі пошук та використання файлу.

  • Як правило, цим методом користуються для реєстрації DLL-файлів, які відносяться до сторонніх програм і які безпосередньо взаємодіють із системними утилітами (наприклад, з командним рядком).

Укажіть суть помилки «entry point» (точка входу).Якщо DLL-файл уже зареєстрований, він не підтримує команду "regsvr" або його код не дозволяє підключитися до реєстру Windows, ви отримаєте повідомлення про помилку "Модуль [ім'я DLL файлу] завантажено, але точку входу DllRegisterServer не знайдено). Якщо на екрані з'явиться повідомлення, ви не зможете зареєструвати DLL-файл.

  • Помилка «точки входу» - це не так проблема, як підтвердження того, що DLL-файл реєструвати не потрібно.
  • Знайдіть файл DLL, який ви хочете зареєструвати.Перейдіть до папки з потрібним файлом DLL і знайдіть його.

    • Якщо файл DLL відноситься до встановленої програми, відкрийте папку з цією програмою (наприклад, C:\Program Files\[ім'я програми]).
  • Відкрийте властивості файлу DLL.Клацніть правою кнопкою миші на DLL-файлі і в меню виберіть «Властивості». Відкриється спливаюче вікно.

    Знайдіть ім'я файлу DLL.У текстовому полі у верхній частині вікна "Властивості" ви знайдете повне ім'я файлу.

    • У більшості файлів DLL складні імена, тому залиште вікно «Властивості» відкритим, щоб скопіювати ім'я пізніше.
  • Скопіюйте шлях до файлу DLL.Утримуйте ліву кнопку миші та проведіть вказівником уздовж тексту, який відображається в рядку «Розташування», а потім натисніть Ctrl+C, щоб скопіювати шлях до DLL-файлу.

    Знайдіть командний рядок.Введіть командний рядок у рядку пошуку меню "Пуск". Значок командного рядка з'явиться у верхній частині меню «Пуск».

    Відкрийте командний рядок як адміністратор.Для цього:

  • Перейдіть у каталог із DLL-файлом.Введіть cd, натисніть на пробіл, натисніть Ctrl+V, щоб вставити шлях до DLL-файлу, а потім натисніть ↵ Enter.

    • Наприклад, якщо DLL-файл знаходиться в папці "SysWOW64", яка розташована в папці "Windows", команда буде виглядати так: cd C:\Windows\SysWOW64
  • Введіть команду "regsvr" та ім'я DLL-файлу.Введіть regsvr32 , натисніть на пробіл, введіть ім'я DLL-файлу (разом з розширенням.dll) та натисніть ↵ Enter. Якщо файл DLL можна зареєструвати, на екрані з'явиться підтвердження реєстрації.

    • Наприклад, якщо ім'я DLL-файлу usbperf.dll, команда буде виглядати так: regsvr32 usbperf.dll
    • Щоб скопіювати ім'я DLL-файлу, повторно відкрийте папку з DLL-файлом (відкриється вікно «Властивості»), виділіть ім'я файлу та натисніть Ctrl+C. Потім вставте ім'я в командний рядок - натисніть Ctrl + V .
    • Якщо DLL-файл уже зареєстрований або не може бути зареєстрований, з'явиться помилка "точки входу", а не підтвердження реєстрації.
  • Спробуйте скасувати реєстрацію файлу DLL, а потім перереєструвати його.Якщо введення команди "regsvr" призводить до помилки, яка не є помилкою "точки входу", скасуйте реєстрацію DLL-файлу, а потім перереєструйте його; для цього:

    • введіть regsvr32 /u имя_файла.dll і натисніть ↵ Enter. Замість "ім'я_файлу" введіть ім'я свого DLL-файлу;
    • Введіть regsvr32 имя_файла.dll і натисніть ↵ Enter. Замість "ім'я_файлу" введіть ім'я свого DLL-файлу.
  • © 2022 androidas.ru - Все про Android