Windows 2000用 MMC 2.0および 3.0の修正

Windows 2000 SP4 SRP2 同梱の MMC 2.0でエラーが出るという報告があったので、調査してみました。

mmc


確認してみると、例外が起こってるか確認してみたところ

          add    esi,000000ECh
          cmp    dword ptr [esi],00000001h
          jnz    L01018BB2
          call    [ole32.dll!OleUninitialize]
          and    dword ptr [esi],00000000h
 L01018BB2:
          pop    esi
          leave
          retn

上記の OleUninitialize でリソースリークが発生していました。
MMC 3.0では発生しないことから、バグだと思われます。
(XPは多少のリソースリークがあっても、エラーが出ずに動いてしまう)

修正版の MMC.exe を作成しましたので、ご利用ください。

Windows2000-mmc20.zip

関連記事:
MMC 3.0 for Windows 2000公開
Microsoft 管理コンソール 2.0 を Windows 2000で使う

おすすめ

7件のフィードバック

  1. Gain より:

    え~。毎度の事で恐縮ですが、今回のこれは最悪です。
    導入した途端デバイスマネージャもデフラグツールも動かせなくなりました。
    具体的には、これらを立ち上げようとすると、MMCコンソールのスナップインの追加画面しか出ないです。
    幸いMMC1.2は手持ちがありますので、手動で復旧しようと思っています。
    以上ご報告まで。

  2. blackwingcat より:

    ええと、スナップインに追加することもできないでしょうか?
    オリジナルのバージョンと終了処理で通る処理しか違わないので、
    今までMMC2.0が起動していたものが起動しなくなるというのは少し考えにくいのですが。

  3. Gain より:

    スナップインの追加そのものは可能です。…が、管理ツールに追加もされませんし、管理ツールのどれを開こうとしても同じ画面になりますorz
    mmc.exeを直に叩いて.mscを直接読み込ませてやれば動くのかな?
    ちょっと後で試して見ます。

  4. Gain より:

    あ、それと、スナップインの追加画面ですが、何も登録されていない状態になっています。
    そして、追加してやっても、再度画面が開くとやはり何も登録されていない状態に戻ってしまいます。

  5. blackwingcat より:

    もしかすると、XMLパーサが正常に登録できてないのかもしれません。
    regsvr32 msxml*.dll (*は数字が入ります)を
    system32 フォルダにあるファイルに実行してみてください。

  6. Gain より:

    すみません。
    SRP2_v13のアンインストール→再インストール後に再導入したところ正常に動作しているようです。
    どうやら今回の環境では何らかの理由でSRP2_v13が正常にインストールされていなかったっぽいです(汗
    お騒がせしました。

  7. 風の松原 より:

    ディスクデフラグツールでファイル終了操作をすると必ずアプリケーションエラー(Windows 2000 SP4 SRP2v18で mmc.exeェラー)となっていましたが修正版mmc.exeを投入してからは問題が発生しなくなりました。ありがとうございました。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です