MSCOMCTL.ocx を v2.2 → v2.1へ

前世紀の遺物と言われようが、VB6をバリバリ使ってます。
でも、心の友は多いと思うんだ~
このブログの検索上位ワードが MSCOMCTL だもの。

PC色々覚書き
VB6 でMSCOMCTL.OCX を 2.1→2.2 にバージョンアップVisual Basic 6.0 Service Pack 6 Runtime 6.0 のセキュリティ更新プログラム KB3096896 をあてるAcro...

4月にv2.2へバージョンアップした MSCOMCTL.ocx を もう一度 v2.1 に戻す必要が出てきました。何故か?「社長の開発環境が v2.1 だから」←お前もバージョンアップしろよ!

で、これが苦労するする。調べても ”OCXのバージョンダウンは出来ない。クリーンインストールすべし” え~そんなぁ~

で、ゴニョゴニョやって何とか出来たので、経緯を晒しておきます。
いつも通り、自己判断でお願いします。

  1. VB6 Runtimeセキュリティ更新のアンインストール
    前回の記事でv2.2 にあげたパッチ KB3096896 を削除します。
    管理者権限のコマンドプロンプトで
    msiexec /x [パッチファイルのフルパス]

  2. Office のアンインストール
    普通にコンパネからアンインストール

  3. 念のため再起動

  4. Officeのインストール

  5. VB6sp6 セキュリティ ロールアップ更新 適用
    最新版 ではなく KB2708437

  6. 念のため再起動

  7. VB6 を起動
    コンポーネント から 「参照」ボタンで C:\Windws\system32\mscomctl.ocx を選択→OK

上記で プロジェクト保存すると、MSCOMCTL.ocx のバージョンが 2.1 になってました。

上手くいかない時は
  regsvr32 /u [mscomctl.ocx をフルパス指定]=OCXのレジトリ登録
  regsvr32  [mscomctl.ocx をフルパス指定]=OCXのレジトリ登録
  c:\Windows\regtlib.exe c:\windows\system32\msdatsrc.tlb=タイプライブラリ登録
などをしてみる。

本当はもっと途中にごにょごにょやったので、もう一度最初の状態に戻して再現テストすべきですが、そんな時間も気力もなく「多分コレが効いたんだろう」です。

迷っている心の友へ。
ヒントになれば幸いです。

コメント

タイトルとURLをコピーしました