Komunikaty o błędach lub awarie programu Access po zainstalowaniu aktualizacji zabezpieczeń MS16-004
Symptomy
Po zastosowaniu 2881067 aktualizacji zabezpieczeń, 2881029, 3039794 lub 2920727 opisanych w biuletynie zabezpieczeń MS16-004 występują problemy, które wpływają na bazę danych programu Access, jeśli używasz niektórych typowych mechanizmów kontroli systemu Windows. W szczególności te problemy występują, jeśli używasz kontrolek skojarzonych z kontrolkami MSCOMCTL. Plik OCX, który został zaktualizowany w aktualizacji zabezpieczeń. Te problemy mogą obejmować następujące kwestie:
Program ulega awarii podczas próby otwarcia obiektu zawierającego jedną z kontrolek.
Są wyświetlane komunikaty o błędach wskazujące, że zdarzenia zostały anulowane. Przykładowe komunikaty o błędach obejmują (ale nie są ograniczone do) następujące:
Error 459: Object or class does not support the set of events. 2501: <EventName> action cancelled. The expression <EventName> you entered as the event property setting produced the following error: Object of class does not support the set of events.
Przyczyna
Ten problem występuje, ponieważ aktualizacja zabezpieczeń MS16-004 może uniemożliwić prawidłowe ładowanie niektórych kontrolek ActiveX w istniejących wcześniej bazach danych programu Access lub w widoku projektu.
Rozwiązanie
Aby rozwiązać ten problem, ponownie zarejestruj plik MSCOMCTL. Plik OCX. Jeśli metoda 1 nie rozwiąże problemu, może być konieczne użycie metody 2, aby najpierw ręcznie usunąć klucz rejestru skojarzony z mscomctl. OCX.
Metoda 1. Ponowne rejestrowanie pliku MSCOMCTL. OCX z wiersza polecenia z podwyższonym poziomem uprawnień
Aby ponownie wyrejestrować mscomctl. OCX, wykonaj następujące kroki:
Otwórz administracyjny wiersz polecenia.
W systemie 64-bitowym uruchom następujące polecenia:
Regsvr32 /u "C:\Windows\SysWOW64\MSCOMCTL.OCX" Regsvr32 "C:\Windows\SysWOW64\MSCOMCTL.OCX"
W systemie 32-bitowym uruchom następujące polecenia:
Regsvr32 /u "C:\Windows\System32\MSCOMCTL.OCX" Regsvr32 "C:\Windows\System32\MSCOMCTL.OCX"
Metoda 2. Ręczne aktualizowanie rejestru
Uwaga
Należy rozważnie wykonywać czynności podane w tej sekcji. Niepoprawne zmodyfikowanie rejestru może być przyczyną poważnych problemów. Przed zmodyfikowaniem go należy utworzyć kopię zapasową rejestru, aby móc go przywrócić w przypadku wystąpienia problemu.
Zakończ pracę wszystkich programów pakietu Office.
Kliknij przycisk Start, wpisz regedit w polu wyszukiwania Start , a następnie kliknij przycisk OK.
W Redaktor rejestru znajdź i usuń następujący podklucz 2.0:
HKEY_CLASSES_ROOT\TypeLib{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}\2.0
Uruchom kroki 1–3 w metodzie.
Metoda 3 (dla administratorów): Uruchom plik wsadowy, aby automatycznie zaktualizować systemy
Uwaga
Należy rozważnie wykonywać czynności podane w tej sekcji. Niepoprawne zmodyfikowanie rejestru może być przyczyną poważnych problemów. Przed zmodyfikowaniem go należy utworzyć kopię zapasową rejestru, aby móc go przywrócić w przypadku wystąpienia problemu.
Po pomyślnym ustaleniu rozwiązania tego problemu w środowisku przy użyciu metod 1 i 2 można zautomatyzować proces. Aby to zrobić, wykonaj następujące kroki.
Utwórz plik tekstowy, a następnie wklej w nim następujący tekst:
reg delete hkcr\typelib\{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}\2.0 /f if exist %systemroot%\SysWOW64\cscript.exe goto 64 %systemroot%\system32\regsvr32 /u mscomctl.ocx %systemroot%\system32\regsvr32 mscomctl.ocx exit :64 %systemroot%\sysWOW64\regsvr32 /u mscomctl.ocx %systemroot%\sysWOW64\regsvr32 mscomctl.ocx Exit
Zapisz plik.
Zmień rozszerzenie nazwy pliku z .txt na .bat.
Uruchom plik .bat. W tym celu kliknij go prawym przyciskiem myszy, a następnie kliknij przycisk Uruchom jako administrator. (W systemie Windows XP kliknij dwukrotnie plik).
Uwaga
Jeśli w metodzie 1 ustalono, że nie trzeba usuwać klucza rejestru wymienionego w metodzie 2, aby aplikacja działała, możesz usunąć wiersz "reg delete" z pliku wsadowego.
Więcej informacji
Kontrolki skojarzone z mscomctl. OCX są wymienione w oknie dialogowym Wstawianie kontrolki ActiveX w następujący sposób:
Microsoft ImageComboBox Control 6.0 (SP6)
Microsoft ImageList Control 6.0 (SP6)
Microsoft ListView Control 6.0 (SP6)
Microsoft ProgressBar Control 6.0 (SP6)
Microsoft Slider Control 6.0 (SP6)
Microsoft StatusBar Control 6.0 (SP6)
Microsoft TabStrip Control 6.0 (SP6)
Microsoft Toolbar Control 6.0 (SP6)
Microsoft TreeView Control 6.0 (SP6)
Uwaga
Numer wersji i poziom dodatku Service Pack mogą być czymś innym niż "6.0 (SP6)".
Zgłaszane są również problemy występujące w innych produktach pakietu Office po zainstalowaniu tej aktualizacji, chociaż objawy mogą się różnić od tych występujących w programie Access. W innych programach może nie być konieczne wprowadzanie żadnych zmian w rejestrze.
Informacje
Aby uzyskać więcej informacji na temat tej aktualizacji zabezpieczeń, zobacz następujące artykuły z bazy wiedzy Microsoft Knowledge Base:
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla