マイクラの新インストーラーについて調べてみた

マインクラフトのインストーラーが新しくなったという話を聞いたので、うちのWindows 2000で色々調べてみました
以下分かった事です。

・ダウンロードできる MinecraftInstaller.msi は 2015年1月のまま
・なのでインストールされるJava 8 は Update 25 のまま
・自動インストールされる Minecraft.exe は以下の物
http://launcher.mojang.com/mc/launcher/win/7dbb83a4ffb116a3c37230ec727e30298990c365/Minecraft.exe
・起動される MinecraftLauncher.exe が Windows 2000 互換モードだと強制的にクラッシュさせられる
・起動される MinecraftLauncher.exe が Windows 7 互換モードだと新インストーラーがダウンロードされる
・ダウンロードされた 新ランチャーは MinecraftLauncher.exe が Launcher.dll を動的に呼び出して起動する。
・新ランチャーはChrome コンポーネントを使っているので libcef.dll が配下のフォルダに存在する
・バージョンを調べると 3.2840.1511.0、Windows 7以降の専用命令てんこ盛りバージョン。
・リンクしている関係上 CEF 3.2704.1434 なら使えるはずなので入れてみる。

 L100A160F:
          lea    eax,[ebp-000000FCh]
          mov    dword ptr [ebp-04h],FFFFFFFFh
          push    eax
          call    SUB_L100B4740 // <- 使ってるCEFのライブラリバージョンをチェックして
                                               // 第一引数にライブラリアドレスを格納。
                                              // バージョンが違ってたら NULLが入る
          add    esp,00000004h
          call    [KERNEL32.dll!GetCommandLineW]
          mov    dword ptr [ebp-1Ch],L1016FF20
          mov    dword ptr [ebp-18h],00000000h
          mov    byte ptr [ebp-14h],00h
          test    eax,eax
          jz     L100A1668
          push    eax
          lea    ecx,[ebp-48h]
          call    SUB_L10098D40
          push    eax
          lea    ecx,[ebp-1Ch]
          call    SUB_L100A0F10
          mov    eax,[ebp-34h]
          cmp    eax,00000008h
          jc     L100A1668
          inc    eax
          lea    ecx,[ebp-48h]
          push    eax
          push    [ebp-48h]
          call    SUB_L1000D400
 L100A1668:
          mov    ecx,[ebp-000000FCh]
          lea    edx,[ebp-1Ch]
          push    edx
          mov    eax,[ecx]               //ライブラリバージョンが違ってたら、
                                                     //エラーもなくクラッシュする素敵仕様

          call    [eax+10h]

・Chromium Embedded Framework のバージョンをチェックして、違っていたら、有無を言わせずクラッシュさせる素敵仕様であることが発覚。(例えば、 system32 に別バージョンのCEF をインストールをインストールしていれば環境によってはクラッシュする)

つまり、

・MinecraftLauncher.exe を Vista 未満の互換モードで起動すると古い奴がそのまま使える。
・Java は 8 Update 25をダウンロードしてくれる素敵仕様のまま
・新 ランチャーはChromium Embedded Framework を使ってるけど、ランチャー自体がバッファーチェックすらしないゴミのような仕様。セキュリティホールもあると思われる。
・新ランチャーが手抜きなのは確実(ファイルの作成日時は2017/02/09 15時)
la
・インストーラーフォルダに、プログラムのインポート ライブラリ (.lib) とエクスポート ファイル (.exp)  も同梱してくれる親切設計!(要するにゴミファイル)

やっぱり、マイクロソフトが買収すると、何もかもゴミになりますね・ω・!

おすすめ

2件のフィードバック

  1. . より:

    ひどい・・・
    ランチャーが新しくなることで、悪くなってしまうとは

  2. . より:

    ひどい・・・
    ランチャーが新しくなることで、悪くなってしまうとは

コメントを残す

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