Messaggi di errore o arresto anomalo dell'accesso dopo l'installazione dell'aggiornamento della sicurezza MS16-004

Sintomi

Dopo aver applicato 2881067 di aggiornamento della sicurezza, 2881029, 3039794 o 2920727 descritti nel bollettino sulla sicurezza MS16-004, si verificano problemi che influiscono sul database di Access se si usano determinati controlli comuni di Windows. In particolare, questi problemi si verificano se si usano i controlli associati a MSCOMCTL. File OCX aggiornato nell'aggiornamento della sicurezza. Questi problemi possono includere quanto segue:

  • Il programma si arresta in modo anomalo quando si tenta di aprire un oggetto che include uno dei controlli .

  • Vengono visualizzati messaggi di errore che indicano che gli eventi sono stati annullati. I messaggi di errore di esempio includono (ma non sono limitati a) i seguenti:

    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.   
    

Causa

Questo problema si verifica perché l'aggiornamento della sicurezza MS16-004 potrebbe impedire il caricamento corretto di alcuni controlli ActiveX all'interno di database di Access preesistenti o in visualizzazione Progettazione.

Risoluzione

Per risolvere questo problema, registrare nuovamente MSCOMCTL. File OCX. Se il metodo 1 non risolve il problema, potrebbe essere necessario usare il metodo 2 per eliminare manualmente una chiave del Registro di sistema associata a MSCOMCTL. OCX.

Metodo 1: Registrare nuovamente MSCOMCTL. OCX da un prompt dei comandi con privilegi elevati

Per registrare nuovamente MSCOMCTL. OCX, seguire questa procedura:

  1. Aprire un prompt dei comandi amministrativo.

  2. In un sistema a 64 bit eseguire i comandi seguenti:

     Regsvr32 /u "C:\Windows\SysWOW64\MSCOMCTL.OCX" Regsvr32 "C:\Windows\SysWOW64\MSCOMCTL.OCX"
    
  3. In un sistema a 32 bit eseguire i comandi seguenti:

     Regsvr32 /u "C:\Windows\System32\MSCOMCTL.OCX" Regsvr32 "C:\Windows\System32\MSCOMCTL.OCX"
    

Metodo 2: Aggiornare manualmente il Registro di sistema

Nota

Seguire attentamente i passaggi in questa sezione. L'errata modifica del Registro di sistema può causare seri problemi. Prima di apportare le modifiche, eseguire il backup del Registro di sistema per il ripristino nel caso si verifichino dei problemi.

  1. Chiudere tutti i programmi di Office.

  2. Fare clic su Start, digitare regedit nella casella di ricerca Start e quindi fare clic su OK.

  3. In Registro di sistema Editor individuare ed eliminare la sottochiave 2.0 seguente:

    HKEY_CLASSES_ROOT\TypeLib{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}\2.0

  4. Eseguire i passaggi da 1 a 3 in Metodo.

Metodo 3 (per gli amministratori): eseguire un file batch per aggiornare automaticamente i sistemi

Nota

Seguire attentamente i passaggi in questa sezione. L'errata modifica del Registro di sistema può causare seri problemi. Prima di apportare le modifiche, eseguire il backup del Registro di sistema per il ripristino nel caso si verifichino dei problemi.

Dopo aver determinato correttamente la correzione di questo problema nell'ambiente usando i metodi 1 e 2, è possibile automatizzare il processo. A tal fine, attenersi alla seguente procedura:

  1. Creare un file di testo e incollarvi il testo seguente:

    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
    
  2. Salvare il file.

  3. Modificare l'estensione del nome file da .txt a .bat.

  4. Eseguire il file .bat. A tale scopo, fare clic con il pulsante destro del mouse e quindi scegliere Esegui come amministratore. In Windows XP fare doppio clic sul file.

Nota

Se nel metodo 1 si è stabilito che non è necessario eliminare la chiave del Registro di sistema indicata nel metodo 2 per far funzionare l'applicazione, è possibile rimuovere la riga "reg delete" dal file batch.

Ulteriori informazioni

Controlli associati a MSCOMCTL. OCX è elencato nella finestra di dialogo Inserisci controllo ActiveX come indicato di seguito:

Controllo Microsoft ImageComboBox 6.0 (SP6)

Controllo Microsoft ImageList 6.0 (SP6)

Controllo Microsoft ListView 6.0 (SP6)

Controllo Microsoft ProgressBar 6.0 (SP6)

Controllo Dispositivo di scorrimento Microsoft 6.0 (SP6)

Controllo Microsoft StatusBar 6.0 (SP6)

Controllo Microsoft TabStrip 6.0 (SP6)

Controllo della barra degli strumenti Microsoft 6.0 (SP6)

Controllo Microsoft TreeView 6.0 (SP6)

Nota

Il numero di versione e il livello di Service Pack possono essere diversi da "6.0 (SP6)".

I problemi sono stati segnalati anche in altri prodotti Office dopo l'installazione di questo aggiornamento, anche se i sintomi possono variare da quelli che si verificano in Access. In altri programmi potrebbe non essere necessario apportare modifiche nel Registro di sistema.

Riferimenti

Per altre informazioni su questo aggiornamento della sicurezza, vedere gli articoli della Microsoft Knowledge Base seguenti: