次の方法で共有


セキュリティ更新プログラム MS12-060 Access データベースの機能が損なわれる

現象

セキュリティ更新プログラム MS12-060 を適用した後、MSCOMCTL に関連付けられている Windows 共通コントロールのいずれかを使用している場合は、Access データベースで問題が発生する可能性があります。パッチで更新された OCX ファイル。 いずれかのコントロールを含むオブジェクトを開くときに問題が発生する場合や、イベントが取り消されたことを示すエラー メッセージが含まれる場合があります。 エラー メッセージの例には、次の例が含まれます (ただし、これらに限定されません)。

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.

原因

セキュリティ更新プログラム MS12--060 により、既存の Access データベース内やデザイン ビューにコントロールを挿入するときに、特定の ActiveX コントロールが正しく読み込めなくなります。

解決方法

方法 1: 以下の適切なリンクから修正プログラムを適用します。

Office 2010: https://support.microsoft.com/kb/2597986

Office 2003: https://support.microsoft.com/kb/2687323

方法 2: MSCOMCTL を再登録します。管理者特権でのコマンド プロンプトからの OCX

  1. 管理者特権でコマンド プロンプトを開きます。

  2. 64 ビット システムで作業している場合は、次の 2 つのコマンドを実行します。

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

    Regsvr32 "C:\Windows\SysWOW64\MSCOMCTL.OCX"

  3. 32 ビット システムで作業している場合は、代わりに次のコマンドを実行します。

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

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

方法 3: レジストリを手動で更新する

場合によっては、MSCOMCTL の登録と登録解除を行います。アクセス許可が昇格された OCX では、データベースの問題を解決するには不十分です。 このような場合は、MSCOMCTL に関連付けられているレジストリ キーを手動で削除します。OCX が必要な場合があります。

重要

このセクション、方法、またはタスクには、レジストリの編集方法が記載されています。 レジストリを誤って変更すると、深刻な問題が発生することがあります。 したがって、次の手順を注意深く実行してください。 保護のために、レジストリを変更する前に、バックアップします。 その後、問題が起こった場合は、レジストリを復元できます。 レジストリをバックアップおよび復元する方法の詳細については、「 Windows でレジストリをバックアップおよび復元する方法を参照してください。

  1. すべての Office プログラムを終了します。

  2. [スタート]、[実行] の順に選択します。

  3. [開く] ボックスに「regedit」と入力し (引用符なし)、[OK] を選択します。

  4. レジストリから次の 2.0 キーを参照して削除します。

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

  5. 上記の方法 1 から手順 1 から 3 を実行します。

方法 4: システムを自動的に更新するバッチ ファイルを実行する

: これらの手順を実行する前に、レジストリをバックアップすることをお勧めします。

  1. 新しいテキスト ファイルを作成し、次の内容をコピーして貼り付けます。

    reg delete hkcr\typelib\{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}\2.0 /f

    存在する場合 %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

    終了

  2. ファイルを保存します。

  3. ファイル拡張子を .TXT から .BAT に変更します。

  4. .BAT ファイルを右クリックし、[管理者として実行] を選択して実行します。

: アプリケーションを動作させるために上記のレジストリ キーを削除する必要がない場合は、バッチ ファイルから reg 削除行を削除できます。

その他の情報

MSCOMCTL に関連付けられているコントロール。OCX は、[ActiveX コントロールの挿入] ダイアログ ボックスに次のように表示されます。

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)

: バージョン番号とサービス パック レベルは、"6.0 (SP6)" 以外の場合があります。

修正プログラムを追加した後、他の Office 製品でも問題が発生しましたが、Access で見られる問題とは症状が異なる場合があります。 上記のレジストリ キーの削除は、このような場合の問題に対処するために必要ない場合があります。

セキュリティ更新プログラムの詳細については、次の記事を参照してください。