Windows Vistaの多言語インストールディスクを作成してみる

こんなものを手に入れました。

画像


Windows Vistaのインストールディスクですが、言語がThai、すなわちタイ語
私はタイ語はさっぱり分からないのでこのままではこのディスクは持ち腐れになってしまいます。

と、いうわけでこのディスクから日本語のインストールディスクを作ってみよう、という話です。




とりあえず目標は次の2つ。

・CD4枚組のインストールディスクをDVD1枚に統合する
・インストール言語を日本語にし、セットアップ画面も日本語化する


※以降の解説では、入力するコマンドの内容を緑字出力される内容を青字で示しています。
 また、入力するコマンドの行頭には > を記していますが、実際に入力するのはその次の文字からです。



まずは情報収集。
Google先生に聞くと、ある程度の情報が分かりました。
・インストールイメージの肝はinstall.wimとboot.wimにあり
・boot.wimはセットアップ環境に、install.wimはインストール言語に影響する
・wimを扱うにはimagexかdismを使うとよい

そんな感じの情報が集まったので、早速行動開始。
まずはインストールディスクからデータを抽出。このインストールディスクはCD4枚組で、インストールイメージも分割されているようです。
とりあえず気にせずにinstall.swm, install2.swm, install3.swm, install4.swmを取り出して適当な場所に置きます。
試しにwim(分割されてるため拡張子がswmですが)の情報を見てみます。

> DISM /Get-WimInfo /WimFile:install.swm

展開イメージのサービスと管理ツール
バージョン: 10.0.14393.0

イメージの詳細: install.swm

インデックス: 1
名前: Windows Vista BUSINESS
説明: Windows Vista Business
サイズ: 6,859,278,479 バイト

インデックス: 2
名前: Windows Vista HOMEBASIC
説明: Windows Vista HomeBasic
サイズ: 6,356,837,805 バイト

インデックス: 3
名前: Windows Vista HOMEPREMIUM
説明: Windows Vista HomePremium
サイズ: 7,725,419,121 バイト

インデックス: 4
名前: Windows Vista ULTIMATE
説明: Windows Vista Ultimate
サイズ: 7,813,499,582 バイト

インデックス: 5
名前: Windows Vista STARTER
説明: Windows Vista Starter
サイズ: 6,280,227,083 バイト

操作は正常に完了しました。


ほうほう、Business, Home Basic, Home Premium, Ultimate, Starterの5つのエディションが入っているようです。

まずはどうにかして分割されているファイルを結合する必要がありそうなので、調べたところ、dismのExport-Imageオプションを使うのが良さげ。
早速実行。

> DISM /Export-Image /SourceImageFile:install.swm /swmFile:install*.swm /SourceIndex:1 /DestinationImageFile:install.wim

展開イメージのサービスと管理ツール
バージョン: 10.0.14393.0

イメージをエクスポートしています
[==========================100.0%==========================]
操作は正常に完了しました。


オッケー、問題なく結合できたっぽいです。
早速Get-WimInfoでチェック。

> DISM /Get-WimInfo /WimFile:install.wim

展開イメージのサービスと管理ツール
バージョン: 10.0.14393.0

イメージの詳細: install.wim

インデックス: 1
名前: Windows Vista BUSINESS
説明: Windows Vista Business
サイズ: 6,859,278,479 バイト

操作は正常に完了しました。


指定したインデックス(1 = Business)のデータが出力できてますね。
あとはこれを残りのエディションに対しても繰り返せば…

> DISM /Export-Image /SourceImageFile:install.swm /swmFile:install*.swm /SourceIndex:2 /DestinationImageFile:install.wim
> DISM /Export-Image /SourceImageFile:install.swm /swmFile:install*.swm /SourceIndex:3 /DestinationImageFile:install.wim
> DISM /Export-Image /SourceImageFile:install.swm /swmFile:install*.swm /SourceIndex:4 /DestinationImageFile:install.wim
> DISM /Export-Image /SourceImageFile:install.swm /swmFile:install*.swm /SourceIndex:5 /DestinationImageFile:install.wim
> DISM /Get-WimInfo /WimFile:install.wim


展開イメージのサービスと管理ツール
バージョン: 10.0.14393.0

イメージの詳細: install.wim

インデックス: 1
名前: Windows Vista BUSINESS
説明: Windows Vista Business
サイズ: 6,859,278,479 バイト

インデックス: 2
名前: Windows Vista HOMEBASIC
説明: Windows Vista HomeBasic
サイズ: 6,356,837,805 バイト

インデックス: 3
名前: Windows Vista HOMEPREMIUM
説明: Windows Vista HomePremium
サイズ: 7,725,419,121 バイト

インデックス: 4
名前: Windows Vista ULTIMATE
説明: Windows Vista Ultimate
サイズ: 7,813,499,582 バイト

インデックス: 5
名前: Windows Vista STARTER
説明: Windows Vista Starter
サイズ: 6,280,227,083 バイト

操作は正常に完了しました。


これでswmの結合は完了です。
次はこのwimをマウントして日本語化していきます。
今度はWindows AIKのimagexを使う…はずが、Win10ではUnmount直後にBSoDになる問題が(しかも変更は保存されない)…。
仕方ないので仮想環境にVistaを構築してそっちで扱うことにします。

まずはImageXでwimをマウント。
以下の1はインデックス番号(この場合はBusiness)、mountはマウント先のディレクトリです。事前に作成しないとエラーが出ます。
> ImageX /MountRW install.wim 1 mount

次にPEImgを用いて言語ファイルを追加していきます。
lp.cabは事前に用意した言語ファイルです。ダウンロードはVistalizatorから行いました。
なお、ブラウザからダウンロードすると途中で切断される可能性があるため、ダウンローダを使用することを推奨します。
> PEImg /Import=lp.cab mount
> PEImg /Intall=*LanguagePack* mount


次に、システムのデフォルトロケールを設定します。
> PEImg /Lang=ja-JP mount
> PEImg /Timezone=ja-JP mount


さらに、lang.iniを再生成します。
コマンド内のdiscdataはインストールディスクのデータを丸ごとコピーしたディレクトリです。
> intlcfg -GenLangini -dist:discdata -image:mount
discdata\sources\lang.iniを見て変更が反映されているか確認してください。
初期言語を変更したい場合は初期言語にしたい言語を3に、それ以外を2にすれば良いです。
後述しますがここで変更されるのはインストール言語であり、表示言語ではないので注意してください。
そのため、後述しますがこの時点ではセットアップ画面はタイ語のままです。

最後に変更を反映してアンマウントします。
> ImageX /Unmount /Commit mount

あとはこれをインデックス2~5に対しても繰り返して言語パックの適用は完了です。
続いてセットアップに必要なファイルをコピーします。
まずは用意したlp.cabを解凍します。コマンド内のlangは言語パックの解凍先ディレクトリです。
> expand lp.cab -f:* lang

続いて先ほど解凍した言語ファイルをコピーしていきます。
> xcopy lang\setup\sources\ja-jp\* discdata\sources\ja-jp /cherkyi
> xcopy lang\sources\licanse\ja-jp\* discdata\sources\license\ja-jp /cherkyi


続いてboot.wimを編集します。これがまた厄介です。
ひとまずimagexでマウント。
> ImageX /MountRW discdata\sources\boot.wim 2 mount

続いて言語ファイルをコピー。
> xcopy lang\setup\sources\ja-jp\* mount\sources\ja-jp /cherkyi
> xcopy lang\sources\license\ja-jp\* mount\sources\license\ja-jp /cherkyi
> copy discdata\sources\lang.ini mount\sources\lang.ini


マウントを解除して終了。
> ImageX /Unmount /Commit mount

そして、これで終わればいいのですが、そうはいかず…
セットアップを開始するとタイ語…つまり表示言語は変更されていません。
確かにインストールされる言語は日本語なのですが、どうも納得がいきません。
せっかくなのでセットアップ言語も変えてしまいたいものです。

と、いうわけでもう少し続きます。
以降はwimの操作のみなのでホストPCに戻り、dismを使います。

まずはマウント。
> DISM /Mount-Wim /WimFile:boot.wim /Index:2 /MountDir:mount_boot

展開イメージのサービスと管理ツール
バージョン: 10.0.14393.0

イメージをマウントしています
[==========================100.0%==========================]
操作は正常に完了しました。


さて、まずは追加で必要な言語ファイルをコピーします。
そのために、再度install.wimをマウントします。
> DISM /Mount-Wim /WimFile:install.wim /Index:1 /MountDir:mount_inst

その後、mount_inst\Windows\System32\ja-JP にあるファイルをすべてコピー、
mount_boot\Windows\System32\ja-JP へ貼り付けます。このとき、既存のファイルは上書きしなくてもいいです。
※必要なファイルだけ欲しい!という方はすでにデフォルトでインストール済みだった言語のディレクトリ(今回はタイ語なので、mount_boot\Windows\System32\th-TH)を参照してください。
 そこにあるファイルが必要なファイルです。80個以上のファイルがあるので選んでコピーするのは結構面倒です。

次に、フォントデータをコピーします。日本語を表示するためにはゴシックフォントが必要です。
mount_inst\Windows\Fonts\msgothic.ttc をmount_boot\Windows\Fonts へコピーします。

続いて、レジストリを書き換えます。
レジストリエディタを起動し、HKEY_LOCAL_MACHINEにカーソルを置きます。
ファイル(F)→ハイブの読み込み(L)... を選択します。
mount_boot\Windows\System32\config\SYSTEM を開きます(拡張子はありません)。
適当に名前を入力してやると、HKEY_LOCAL_MACHINE直下に指定した名前のキーが出現します。
以下、名前をVISTAとし、HKLM\VISTAをルートとして解説します。

ControlSet001\Control\MUI\UILanguages を開き、その下にja-JPという名前でキーを作成します。
LCIDという名前のDWORD値を作成し、値を0x00000411にセットします。
Typeという名前のDWORD値を作成し、値を0x00000091にセットします。

続いて、ControlSet001\Control\Nls\Language を開き、以下の値を書き換えます。
Defaultを0411
InstallLanguageを0411

さらに、ControlSet001\Control\Nls\Locale を開き、以下の値を書き換えます。
(既定)を00000411
(Default)を00000411

書き換えが完了したら、VISTAを選択した状態で、ファイル(F)→ハイブのアンロード(U)...を選択します。
VISTA キーが消えたら編集完了です。

さらに、引き続きSOFTWAREも編集します。同じ手順で
mount_boot\Windows\System32\config\SOFTWARE を読み込みます。
内容が読み込まれたら、
Microsoft\Windows NT\CurrentVersion\Fonts を開き、以下の値を追加します。
種類:文字列(REG_SZ)
名前:MS Gothic & MS PGothic & MS UI Gothic (TrueType)
値:msgothic.ttc
編集が完了したら先ほどと同様の手順でハイブをアンロードします。

全ての編集が完了したら、イメージを保存します。
先にレジストリエディタ、エクスプローラ等、編集に使ったウィンドウを閉じます(残しているとアンマウント時にエラーが発生する可能性があるためです)。
準備ができたら、
> DISM /Unmount-Wim /Commit /MountDir:mount_boot
展開イメージのサービスと管理ツール
バージョン: 10.0.14393.0

イメージ ファイル : boot.wim
イメージ インデックス : 2
イメージを保存しています
[==========================100.0%==========================]
イメージのマウントを解除しています
[==========================100.0%==========================]
操作は正常に完了しました。


さらに、ファイルコピー用にマウントしたmount_instの方もマウントを解除します。こちらは変更を反映する必要がないので/Discardオプションを使用します。
> DISM /Unmount-Wim /Discard /MountDir:mount_inst

展開イメージのサービスと管理ツール
バージョン: 10.0.14393.0

イメージ ファイル : install.wim
イメージ インデックス : 2
イメージのマウントを解除しています
[==========================100.0%==========================]
操作は正常に完了しました。


これで編集作業はすべて完了です!お疲れさまでした。

最後にディスクイメージを再構築します。
先述のVistalizatorからWindows Vista用のブートイメージとcdimage.exeをダウンロードします。
ダウンロードしたら、次のコマンドを実行します。
> CDImage -lVISTA_DVD_JP -m -u2 -bvista.boot discdata DiscImage.iso
時間がかかるのでまったりと待ちましょう。

ディスクイメージが完成したらようやく作業終了です!疲れた…
ちなみにboot.wim内のlang.iniを以下のようにしていると、

[Available UI Languages]
ja-JP = 3
th-TH = 2

[Fallback Languages]
ja-JP = en-us

画像


インストールの冒頭でどちらの言語を使うか尋ねられます。
前述した言語ファイルのインストールができていれば、選択した言語で表示されるはずです。

それでは実際に作成したディスクでインストールを始めてみます。
今回は日本語を選択。

画像


その後、プロダクトキーの入力をスキップすることでエディションの選択画面に映ります。

画像


試しに日本では発売されなかったStarterを選択してみます。

画像


ライセンス条項は日本語の物が存在しないため、英語になります。

そしてインストール後…

画像


画像


無事、日本語のStarterをインストールすることができました。




以上、マルチランゲージ対応のインストールディスクを作成する方法をまとめてみました。
Vistaがdism非対応だったりImageXがWindows10では使用できないなど問題も多かったですが、なんとか作成できました。
応用すれば1枚のディスクで数か国の言語を入れることもできるようなので、余裕のある方はチャレンジしてみては如何でしょうか…。



もっとも、Windows Vistaは2017年4月11日にサポート切れましたけどね。

ブログ気持玉

クリックして気持ちを伝えよう!

ログインしてクリックすれば、自分のブログへのリンクが付きます。

→ログインへ

なるほど(納得、参考になった、ヘー)
驚いた
面白い
ナイス
ガッツ(がんばれ!)
かわいい

気持玉数 : 0

この記事へのコメント

とおりすがり
2017年04月26日 21:32
どうも、参考になりました。
ただ、「引き続きSOFTWAREも編集します。」というのが分かりにくかったです。
mount_boot\Windows\System32\config\SOFTWARE
を指すものと推察しますが、当たってますでしょうか?
2017年04月27日 06:39
コメントありがとうございます。また、貴重なご意見ありがとうございます。
>mount_boot\Windows\System32\config\SOFTWARE
を指すものと推察しますが
はい、その解釈で大丈夫です。
ここの表現は混乱を招きかねないのでその部分の記事を書き換えておきます。
とおりすがり
2017年04月29日 12:08
ありがとうございます。
Vistaの多言語インストールディスク作成についての日本語の記事は少ないので助かります。

ちなみにですが、ディスクからブートしてではなく、setup.exeを直接叩いてデュアルブート環境にする場合、
最初の再起動の後に表示される文字列のうち、日本語の部分が適切に表示されないので、
boot.wimのIndex:1にもWindows\Fontsフォルダにmsgothic.ttcが必要なようです。
英語版に日本語を追加で試しましたが、うちではこれでうまくいきました。

この記事へのトラックバック