Przejdź do głównej zawartości
Pomoc techniczna
Zaloguj się przy użyciu konta Microsoft
Zaloguj się lub utwórz konto.
Witaj,
Wybierz inne konto.
Masz wiele kont
Wybierz konto, za pomocą którego chcesz się zalogować.

Jeśli w tym artykule nie opisano odpowiedniego komunikatu o błędzie, szczegółowe wyjaśnienie komunikatu o błędzie, zalecane czynności i dodatkowe zasoby pomocy technicznej można znaleźć na stronie Zdarzenia i błędy w witrynie TechNet. 

Podsumowanie

Regsvr32 to narzędzie wiersza polecenia służące do rejestrowania i wyrejestrowywania kontrolek OLE, takich jak kontrolki bibliotek DLL i kontrolki ActiveX, w rejestrze systemu Windows Registry. Narzędzie Regsvr32.exe jest instalowane w folderze %systemroot%\System32 w systemie Windows XP i w nowszych wersjach systemu Windows.


Uwaga W 64-bitowej wersji systemu operacyjnego Windows istnieją dwie wersje pliku Regsv32.exe:

  • Wersja 64-bitowa %systemroot%\System32\regsvr32.exe.

  • Wersja 32-bitowa %systemroot%\SysWoW64\regsvr32.exe.

Składnia polecenia Regsvr32

Narzędzie RegSvr32.exe oferuje następujące opcje wiersza polecenia:

Regsvr32 [/u] [/n] [/i[:wiersz_polecenia]] <dllname>

/u — Wyrejestruj serwer.

/i — Wywołaj funkcję DllInstall, przekazując jej opcjonalny [wiersz_polecenia]; użycie tej opcji razem z opcją /u wywołuje funkcję dll uninstall.
/n — Nie wywołuj serwera DllRegisterServer; tej opcji należy używać z opcją /i.

/s – Tryb cichy. Nie wyświetlaj okien komunikatów.

Typowe rozwiązania błędów narzędzia Regsvr32

W przypadku błędu narzędzia Regsvr32 należy wypróbować jedną z następujących metod:

  • Metoda 1. Ponowne uruchomienie polecenia Regsvr32 w wierszu polecenia z podwyższonym poziomem uprawnieńAby otworzyć wiersz polecenia z podwyższonym poziomem uprawnień, wykonaj następujące czynności:

    Windows 8.1 i Windows 8Szybko przesuń palcem od prawej krawędzi do środka ekranu, a następnie naciśnij pozycję Wyszukiwanie. Jeśli używasz myszy, wskaż prawy dolny róg ekranu i kliknij panel Wyszukiwanie. Wpisz tekst Wiersz polecenia w polu Wyszukaj, kliknij prawym przyciskiem myszy pozycję Wiersz polecenia, a następnie kliknij polecenie Uruchom jako administrator. Jeśli zostanie wyświetlony monit o potwierdzenie lub podanie hasła administratora, wpisz hasło lub kliknij przycisk Zezwalaj.

    Windows 7 i Windows VistaW tym celu kliknij przycisk Start, wpisz tekst Wiersz polecenia lub cmd w polu Wyszukaj, kliknij prawym przyciskiem myszy pozycję Wiersz polecenia, a następnie kliknij polecenie Uruchom jako administrator. Jeśli zostanie wyświetlony monit o potwierdzenie lub podanie hasła administratora, wpisz hasło lub kliknij przycisk Zezwalaj.

    Windows XPZaloguj się przy użyciu konta administratora lub konta z uprawnieniami administratora, a następnie otwórz okno Panel sterowania.

  • Metoda 2. Zarejestrowanie 32-bitowej biblioteki DLL w 64-bitowej wersji systemu Windows za pomocą 32-bitowej wersji narzędzia Regsvr32W razie otrzymania błędu podczas rejestrowania 32-bitowej biblioteki DLL w 64-bitowej wersji systemu Windows, wykonaj następujące czynności:

    1. Otwórz wiersz polecenia z podwyższonym poziomem uprawnień.

    2. Jeśli 32-bitowa biblioteka DLL znajduje się w folderze %systemroot%\System32, przenieś ją do folderu %systemroot%\SysWoW64.

    3. Uruchom następujące polecenie:

      %systemroot%\SysWoW64\regsvr32 <full path of the DLL>

Komunikaty o błędach narzędzia Regsvr32

Poniższa tabela zawiera komunikaty o błędach narzędzia RegSvr32 oraz informacje o ich możliwych przyczynach:

Komunikat o błędzie

Przyczyna

Flaga polecenia %1 jest nieprawidłowa. Przejrzyj opis sposobu użycia polecenia i spróbuj ponownie.

Do narzędzia regsvr32.exe została przekazana nieprawidłowa kombinacja opcji za pomocą wiersza polecenia.

To polecenie jest prawidłowe tylko wtedy, gdy jest otwarty projekt formantu ActiveX OLE Microsoft Visual Studio.

Narzędzie Regsvr32.exe zostało wywołane przez program Visual Studio, jednak w wierszu polecenia nie określono żadnych modułów.

Aby zarejestrować moduł, należy podać nazwę binarną.

Narzędzie Regsvr32.exe zostało wywołane bez określenia modułu w wierszu polecenia.

Nie można uruchomić polecenia OleInitialize. Być może w komputerze jest za mało pamięci. Zamknij wszystkie otwarte programy, a następnie spróbuj ponownie.

Narzędzie Regsvr32 musi zainicjować bibliotekę COM, aby móc wywoływać z niej niezbędne funkcje, a następnie odinicjować bibliotekę w chwili jej zamykania. Te komunikaty o błędzie występują, jeśli próba inicjacji lub usunięcia inicjacji biblioteki COM nie powiedzie się.

Nie można załadować modułu „%1”.\n\n Upewnij się, że plik binarny jest przechowywany w określonej ścieżce, lub zdebuguj go, aby sprawdzić, czy występują problemy z plikiem binarnym lub zależnymi plikami DLL.\n\n%2.

Wystąpił błąd podczas ładowania modułu określonego w wierszu polecenia. Tekst błędu jest wyświetlany jako część komunikatu.

Moduł „%1” został załadowany, ale nie odnaleziono punktu wejścia %2.\n\nUpewnij się, że plik „%1” jest prawidłowym plikiem DLL lub OCX, a następnie spróbuj ponownie.

Narzędzie Regsvr32.exe nie mogło odnaleźć wymaganego punktu wejścia w module określonym w wierszu polecenia. Problem może wystąpić, jeśli punkty wejścia nie zostały poprawnie wyeksportowane z modułu lub jeśli moduł nie jest plikiem DLL ani OCX.

Moduł „%1” został załadowany, ale wywołanie funkcji %2 nie powiodło się i został zwrócony kod błędu %3.\n\nAby uzyskać więcej informacji dotyczących tego problemu, przeprowadź wyszukiwanie w trybie online, używając kodu błędu jako wyszukiwanego terminu.

Wystąpił błąd podczas wywoływania przez narzędzie Regsvr32.exe punktu wejścia w module określonym w wierszu polecenia. Kod błędu jest wyświetlany jako część komunikatu.

Moduł „%1” może nie być zgodny z używaną wersją systemu Windows. Sprawdź, czy moduł jest zgodny z 32-bitową (x86) lub 64-bitową (x64) wersją narzędzia regsvr32.exe.

Ten błąd może wystąpić, jeśli narzędzie regsvr32.exe uruchomiono na komputerze z procesorem x86, a w wierszu polecenia określono moduł 64-bitowy.


Poniższa tabela zawiera komunikaty o błędach narzędzia RegSvr32 oraz informacje o ich możliwych przyczynach:

Komunikat o błędzie

Przyczyna

Nierozpoznana flaga: /nieprawidłowa_flaga

Wpisano nieprawidłowe połączenie flag lub przełączników.

Nie określono nazwy biblioteki DLL.

Nie dołączono nazwy pliku dll.

Plik nazwa_pliku_dll został załadowany, ale nie odnaleziono punktu wejścia DllRegisterServer lub DllUnregisterServer.

Plik nazwa_pliku_dll nie jest plikiem dll ani ocx. Ten komunikat o błędzie powoduje wpisanie na przykład polecenia regsvr32 wjview.exe.

Plik nazwa_pliku_dll nie jest plikiem wykonywalnym i dla tego typu pliku nie jest zarejestrowany żaden pomocnik.

Plik nazwa_pliku_dll nie jest plikiem wykonywalnym (exe, dll lub ocx). Ten komunikat o błędzie powoduje na przykład wpisanie polecenia regsvr32 autoexec.bat.

Plik nazwa_pliku_dll nie jest plikiem samoczynnie rejestrującym się lub w pamięci znajduje się uszkodzona wersja.

Na przykład po wpisaniu polecenia regsvr32 icwdial.dll jest zwracany ten komunikat o błędzie, ponieważ Icwdial.dll nie jest plikiem samoczynnie rejestrującym się. W razie podejrzeń, że w pamięci znajduje się uszkodzona wersja pliku nazwa_pliku_dll, należy spróbować ponownie uruchomić komputer lub ponownie wyodrębnić oryginalną wersję pliku.

Funkcja OleInitialize nie powiodła się (lub „Funkcja OleUninitialize nie powiodła się”)

Narzędzie Regsvr32 musi zainicjować bibliotekę COM, aby móc wywoływać z niej niezbędne funkcje, a następnie usunąć inicjację biblioteki w chwili zamykania. Te komunikaty o błędzie występują, jeśli próba inicjacji lub usunięcia inicjacji biblioteki COM nie powiedzie się. Może to oznaczać na przykład, że plik Ole32.dll jest uszkodzony lub jego wersja jest niewłaściwa.

Funkcja LoadLibrary("nazwa_pliku_dll") nie powiodła się. Funkcja GetlastError zwraca kod 0x00000485

Plik Winerror.h — kod 0x00000485 = 1157 (ERROR_DLL_NOT_FOUND). Oznacza to „Nie można odnaleźć jednego z plików bibliotek potrzebnych do uruchomienia tej aplikacji”. Na przykład wpisanie polecenia regsvr32 missing.dll powoduje zwrócenie tego komunikatu o błędzie, jeśli nie zostanie znaleziony plik Missing.dll.

Funkcja LoadLibrary("nazwa_pliku_dll") nie powiodła się. Funkcja GetLastError zwraca kod 0x00000002

Plik Winerror.h — kod 0x00000002 = 2 (ERROR_FILE_NOT_FOUND). Oznacza to „System nie może odnaleźć określonego pliku”. Inaczej mówiąc, nie znaleziono zależnego pliku DLL. Na przykład wpisanie polecenia regsvr32 icwdial.dll przy brakującym pliku Tapi32.dll (zależność) powoduje zwrócenie tego komunikatu o błędzie.

Funkcja LoadLibrary("dskmaint.dll") nie powiodła się. Funkcja GetLastError zwraca kod 0x000001f

Plik Winerror.h — kod 0x000001f = 31 (ERROR_GEN_FAILURE). Oznacza to „Urządzenie podłączone do systemu nie działa”. Zachowanie to może być spowodowane próbą zarejestrowania pliku .dll Win16. Na przykład wpisanie polecenia regsvr32 dskmaint.dll powoduje zwrócenie tego komunikatu o błędzie.

Funkcja DllRegisterServer (lub DllUnregisterServer) w pliku nazwa_pliku_dll nie powiodła się. Kod zwrotny to: ciąg

W pliku Winerror.h należy odnaleźć ciąg określony w komunikacie.


Potrzebujesz dalszej pomocy?

Chcesz uzyskać więcej opcji?

Poznaj korzyści z subskrypcji, przeglądaj kursy szkoleniowe, dowiedz się, jak zabezpieczyć urządzenie i nie tylko.

Społeczności pomagają zadawać i odpowiadać na pytania, przekazywać opinie i słuchać ekspertów z bogatą wiedzą.

Czy te informacje były pomocne?

Jaka jest jakość języka?
Co wpłynęło na Twoje wrażenia?
Jeśli naciśniesz pozycję „Wyślij”, Twoja opinia zostanie użyta do ulepszania produktów i usług firmy Microsoft. Twój administrator IT będzie mógł gromadzić te dane. Oświadczenie o ochronie prywatności.

Dziękujemy za opinię!

×