В момента сте офлайн в очакване на повторно свързване с интернет

Как да използвате инструмента на Regsvr32 за отстраняване на съобщения за грешка на Regsvr32

Поддръжката за Windows XP завърши

Microsoft завърши поддръжката за Windows XP на 8 април 2014 г. Тази промянa се отрази на актуализациите на софтуера ви и на опциите за защита. Научете какво означава това за вас и как да останете защитени.

Ако сте клиент от малкия бизнес, можете да откриете допълнителни ресурси за отстраняване на неизправности и обучение на сайта за Поддръжка за малкия бизнес.
Ако тази статия не описва съобщението за грешка, което получавате, можете да получите подробни обяснения за съобщението за грешка, препоръчани действия и допълнителни ресурси за поддръжка от уеб сайта на Центъра за съобщения за събития и грешки.
Кратко изложение
OLE контролите, като напр. файлове на DLL или ActiveX контроли (OCX), трябва да бъдат регистрирани. Регистрирането на OLE контрола актуализира регистъра на Windows с местоположението и възможностите на файла, така че дадена програма да се изпълнява правилно.

За да отстраните някои проблеми с Windows, Microsoft Internet Explorer или друга програма, можете да използвате инструмента на Regsvr32 (Regsvr32.exe), за да регистрирате или премахнете регистрацията на OLE контроли.

Например следната статия от Базата знания на Microsoft изисква да използвате Regsvr32.exe за отмяна на регистрация на Wuv3is.dll контролата, преди да я преинсталирате от сайта на Windows Update:
241122 Грешка в приложението, когато щракнете върху Актуализации на продукта (Това може да е на английски)
Ако регистрацията на контрола е неуспешна или искате информация за разработчика как да отстраните проблема с неуспешната регистрация на OLE контрола, вижте статията от Базата знания на Microsoft
140346 Вероятни причини за грешка при регистриране на OLE контрола (Това може да е на английски)
Допълнителна информация
Regsvr32.exe е включен в Microsoft Internet Explorer 3.0, Windows 95 OEM Service Release 2 (OSR2) и в Windows NT 4.0 Service Pack 5 (SP5) или по-късни версии на трите операционни системи. Regsvr32.exe е инсталиран в системната папка (Windows Millennium Edition/Windows 98/Windows 95) или папката System32 (Windows NT/Windows XP/Windows Vista/Windows 7).

Забележка При 64-битова версия на операционна система на Windows съществуват две версии на файла Regsv32.exe:
  • 64-битовата версия е % systemroot%\System32\regsvr32.exe.
  • 32-битовата версия е % systemroot%\SysWoW64\regsvr32.exe.

Използване на Regsvr32.exe

RegSvr32.exe разполага със следните опции за командния ред:
Regsvr32 [/u] [/n] [/i[:cmdline]] dllname

/u - Премахване на регистрацията на сървър
/i - Извиква DllInstall, като му предава допълнителен [cmdline]; когато се използва с /u, извиква деинсталиране на dll
/n - не извиква DllRegisterServer; тази опция трябва да се използва с /i
/s – Тихо; не се визуализират полета със съобщения (добавено в Windows XP и Windows Vista)
Когато използвате Regsvr32.exe, файлът се опитва да зареди компонента и да извика неговата DLLSelfRegister функция. Ако този опит за регистрация премине успешно, Regsvr32.exe извежда диалогов прозорец, който съобщава, че регистрацията е успешна. Ако опитът е неуспешен, Regsvr32.exe връща съобщение за грешка. Това може да включва код за грешка на Win32. За допълнителна информация щракнете върху следния номер на статия в базата знания на Microsoft:
193625 Съобщения за грешка на WinInet (от 12001 до 12156) (Това може да е на английски)
Например за ръчно регистриране на ActiveX контрола Sample.ocx въведете следната команда в командния ред:
c:\regsvr32.exe sample.ocx

Съобщение за грешка на Regsvr32.exe в Windows Vista и по-късни версии

Следващият списък съдържа съобщения за грешка на RegSvr32 и възможните причини:
  • Командата-флаг "" %1"" не е валидна. Прегледайте използването на командата и опитайте отново.
  • Невалидна комбинация от опции е приета в командния ред на regsvr32.exe.
  • Тази команда е валидна само ако OLE Activex контрола на проект на Microsoft Visual Studio е отворена.
  • Regsvr32.exe е извикан от Visual Studio, но не са посочени модули в командния ред.
  • За да регистрирате модул, трябва да предоставите binary име.
  • Regsvr32.exe е извикан без указване на модули в командния ред.
  • Командата OleInitialize не успя да се изпълни. Вашият компютър може да изпитва недостиг на памет. Затворете всички отворени програми и след това опитайте отново.
  • Regsvr32 трябва да инициализира COM библиотеката, преди да може да извика нужните функции на библиотеката, и деинциализира библиотеката при изключване. Тези съобщения за грешка се появяват, ако даден опит за инициализиране или деинициализиране на COM библиотеката премине неуспешно.
  • Модулът ""%1"" не може да се зареди.\n\n Уверете се, че binary е съхранен в указания път или отстранете грешките в него за проблеми с binary или зависимите .DLL файлове.\n\n%2.
  • Възникна грешка при зареждане на модул, който е зададен в командния ред. Като част от съобщението се показва текстът на грешката.
  • Модулът "" %1"" е зареден, но вх. гранична точка %2 не е намерена.\n\nУверете се, че "" %1"" е валиден DLL или OCX файл и след това опитайте отново
  • Regsvr32.exe не успя да намери необходимата вх. гранична точка в модула, определен в командния ред. Това може да се случи, ако вх. гранични точки не са експортирани правилно от модула или ако модулът не е .DLL или .OCX файл.
  • Модулът ""%1"" е зареден, но извикването към %2 е неуспешно с код на грешка %3.\n\nЗа повече информация за този проблем потърсете онлайн, използвайки кода на грешката като термин за търсене.
  • Възникна грешка при извикването на вх. гранична точка от regsvr32.exe в модула, указан в командния ред. Кодът на грешката се показва като част от съобщението.
  • Модулът ""%1"" може да не е съвместим с версията на Windows, която изпълнявате. Проверете дали модулът е съвместим с x86 (32-битова) или x64 (64-битова) версия на regsvr32.exe.
  • Тази грешка може да възникне напр., ако regsvr32.exe се изпълнява на x86 компютър и модулът, указан в командния ред, е 64-битов модул.

Съобщения за грешка на Regsvr32.exe във версия на Windows, която е по-ранна от Windows Vista

Следващият списък съдържа съобщения за грешка на RegSvr32 и възможните причини:
  • Unrecognized flag: ("Неразпознат флаг:") /invalid_flag ("/невалиден_флаг")
  • You typed an invalid combination of flags or switches (refer to the "Regsvr32.exe Usage" section in this article). ("Въвели сте неправилна комбинация на флагове или параметри (за допълнителна информация вижте раздела "Използване на Regsvr32.exe).")
  • No DLL name specified. ("Не е посочено DLL име.")
  • You did not include a .dll file name (refer to the "Regsvr32.exe Usage" section in this article). ("Не сте включили име на .dll файл (вижте раздела "Използване на Regsvr32.exe" в тази статия).")
  • Dll_Name was loaded, but the DllRegisterServer or DllUnregisterServer entry point was not found. ("DLLиме е зареден, но не е открита вх. гранична точка в DllRegisterServer или DllUnregisterServer.")
  • The specified Dll name is not a .dll or .ocx file. ("Указаното Dll име не е .dll или .ocx файл.") Например въвеждането на regsvr32 wjview.exe генерира това съобщение за грешка.
  • Dll_Name is not an executable file and no registration helper is registered for this file type. ("DLLиме не е изпълним файл и за този тип файл не е бил регистриран регистрационен помощник.")
  • The specified Dll name is not an executable file (.exe, .dll, or .ocx). ("Указаното Dll име не е изпълним файл (.exe, .dll или .ocx).") Например въвеждането на regsvr32 autoexec.bat генерира това съобщение за грешка.
  • Dll_Name was loaded, but the DllRegisterServer or DllUnregisterServer entry point was not found. ("DLLиме е зареден, но не е открита вх. гранична точка в DllRegisterServer или DllUnregisterServer.")
  • Указаното Dll име може да не е експортирано или повредена негова версия може да се намира в паметта. Съветваме ви да използвате Pview за откриване и премахване на файла.
  • Dll_Name is not self-registerable or a corrupted version is in memory. ("DLLиме не може да се регистрира автоматично или има повредена версия в паметта.")
  • Напр. въвеждането на regsvr32 icwdial.dll връща това съобщение за грешка, защото Icwdial.dll файлът не се регистрира автоматично. Ако подозирате, че в паметта има повредена версия на Dllname, рестартирайте компютъра или извлечете повторно оригиналната версия на файла. Ако работите под Windows NT, възможно е да се наложи да използвате инструмента Kill или Pview от Microsoft Windows NT Server 4.0 Resource Kit. За повече информация вижте статия 197155 от Базата знания на Microsoft: Премахване на загубени процеси (Това може да е на английски)
  • Неуспешно OleInitialize (или Неуспешно OleUninitialize)
  • Regsvr32 трябва да инициализира COM библиотеката, преди да може да извика нужните функции на библиотеката, и деинциализира библиотеката при изключване. Тези съобщения за грешки се появяват, ако даден опит за инициализиране или деинициализиране на COM библиотека премине неуспешно. Например файлът Ole32.dll може да бъде повреден или версията му да е неправилна.
  • LoadLibrary("Dll_Name") failed. ("Грешка при зареждането на библиотека ("Dll име")") GetlastError returns 0x00000485 ("GetlastError връща грешка 0x00000485")
  • От Winerror.h, 0x00000485 = 1157 (ERROR_DLL_NOT_FOUND). Това означава "Един от файловете на библиотеката, които са необходими, за да стартирате това приложение, не може да бъде намерен." Например въвеждането на regsvr32 missing.dll предизвиква връщане на това съобщение за грешка, ако файлът Missing.dll не бъде открит.
  • LoadLibrary("Dll_Name") failed. ("Грешка при зареждането на библиотека ("Dll име")") GetlastError returns 0x00000002 ("GetlastError връща грешка 0x00000002")
  • От Winerror.h, 0x00000002 = 2 (ERROR_FILE_NOT_FOUND). Това означава "Системата не може да намери указания файл." С други думи не е бил намерен зависим DLL. Например въвеждането на regsvr32 icwdial.dll с липсващ Tapi32.dll (зависимост) връща следното съобщение за грешка.
  • LoadLibrary("dskmaint.dll") failed. ("Грешка при зареждането на библиотека ("dskmaint.dll")") GetLastError returns 0x000001f
  • От Winerror.h, 0x000001f = 31 (ERROR_GEN_FAILURE). Това означава "Не функционира устройство, свързано към системата". Това може да се случи, ако се опитате да регистрирате Win16 .dll файл. Например въвеждането на regsvr32 dskmaint.dll връща това съобщение за грешка.
  • DllRegisterServer (or DllUnregisterServer)in Dll_Name failed. ("Грешка при зареждането на DllRegisterServer (или DllUnregisterServer) в ("Dll име")") Върнатият код е бил: низ
  • Търсене в Winerror.h файла за низа, който е указан в съобщението.

Допълнителни ресурси
regsrv32 exe w98hem
Свойства

ИД на статията: 249873 – Последен преглед: 10/31/2012 16:19:00 – Редакция: 5.0

Windows Vista Enterprise, Windows Vista Business, Windows Vista Business N 64-bit Edition, Windows Vista Home Basic, Windows Vista Home Basic N, Windows Vista Home Basic N 64-bit Edition, Windows Vista Home Premium, Windows Vista Starter, Windows Vista Ultimate, Windows Vista Business N, Windows Vista Business 64-bit edition, Microsoft Windows XP Home Edition, Microsoft Windows XP Media Center Edition 2005 Update Rollup 2, Microsoft Windows XP Professional, Microsoft Windows XP Professional N, Microsoft Windows XP Home Edition N, Microsoft Windows XP Tablet PC Edition, Microsoft Windows 2000 Server, Microsoft Windows 2000 Advanced Server, Microsoft Windows 2000 Professional Edition, Microsoft Windows 95, Microsoft Windows NT Workstation 4.0 Developer Edition, Microsoft Windows NT Server 4.0 Standard Edition, Windows 7 Enterprise, Windows 7 Home Basic, Windows 7 Home Premium, Windows 7 Professional, Windows 7 Starter, Windows 7 Ultimate, Windows 7 Enterprise N, Windows 7 Home Premium N, Windows 7 Professional N, Windows 7 Starter N, Windows 7 Ultimate N

  • kbresolve kbenv kberrmsg kbinfo kbkern32dll KB249873
Обратна връзка
/html>ms.dqid"; document.getElementsByTagName("head")[0].appendChild(m); html>