2014/06/24

Windows 8.1 の言語や時刻をPowerShell/コマンドから変更する~英語版Surface 2を日本語化

昨年末に購入した海外版Surface 2は購入当初から「Sleep of Death現象」に悩まされています。
しかし、知人から「所有しているSurface 2では再現していないよ!」という事でしたのでOSを初期化してみました。
初期化後に必ず行う事は「日本語化」です。
この作業はちょっとした時間がかかるため、可能な限り自動化は出来ないものか?と。
調べてみたところ、全自動ではありませんがPowerShellとコマンドを利用する事で比較的簡単に日本語化できました。
今回は、Surface 2を日本語化する手順に沿ってWindows 8.1の言語や時刻をPowerShellとコマンドから変更する方法をメモ。

Sleep of Death 現象とは

Sleep of Death 現象とは
  • スリープ状態で電源ボタンを押すがサインイン画面が表示されない
  • 画面が真っ暗だが、バックライトは点灯している
  • (稀に)時間はかかるがサインイン画面が表示される
の事で、海外ユーザの造語だと思います。
個人的には、現象を表す言葉として非常に分かりやすいと思っています。

Surface 2を日本語化する手順

基本「コマンドレットとコマンド」で操作できますが、一部「コマンドレット/コマンドが使えない」操作があります。
もしコマンドレットやコマンドをご存じの方いらっしゃいましたら是非コメントください。
1.管理者権限でPowerShellを起動
管理者権限でPowerShellを起動します。
既にユーザ権限のPowerShellを起動している場合は、
Start-Process powershell.exe -Verb runas
を実行してください。
2.日本語を追加
現在の言語(en-US)に日本語(ja-JP)を追加します。
Set-WinUserLanguageList ja-JP, en-US -Force 
上記コマンドは
①[コントロール パネル]→[時計、言語、および地域]→[言語]→[言語の設定の変更]→[言語の追加]から日本語を選択する
②[日本語]を最優先にする
の操作に相当します。
005
3.[GUI] Windows Update経由で言語パック(KB2839636)をダウンロード&インストール
この操作はGUIから手動で行います。
Surface 2の場合、Windows 8.1 RT用言語パック ファイルを単体 or ISOで提供されていないようです。
そのため、GUIから日本語をダウンロード&インストールしてください。
008
尚、x86/x64のWindows 8.1 (RTではない)であれば、[Add-WindowsPackage] コマンドレットを使用し日本語の言語パックをインストールする事が出来ます。
Add-WindowsPackage -PackagePath d:\xxxx\lp.cab -Online
4.表示言語を上書き
Windows の表示言語である英語を日本語で上書きします。
Set-WinUILanguageOverride -Language ja-JP
上記コマンドレットは、
[コントロール パネル]→[時計、言語、および地域]→[言語]→[詳細設定]→[Windows の表示言語の上書き]から日本語(日本)を選択する
の操作に相当します。
image
Language パラメータは、CultureInfoを指定します。
CultureInfo クラス - Microsoft Developer Network
5.[アプリ ウィンドウごとに異なる入力方式を設定する]にチェックする
Windows 8 / 8.1のウィンドウ毎にMS-IMEの入力方式を設定します。
Set-WinLanguageBarOption -UseLegacySwitchMode 
上記コマンドレットは
[コントロール パネル]→[時計、言語、および地域]→[言語]→[詳細設定]→[アプリ ウィンドウごとに異なる入力方式を設定する]にチェックする
の操作に相当します。
image
6.再起動
設定を反映させるため、OSを再起動します。
Restart-Computer
7.[Unicode非対応プログラムの言語]を日本語にする
Unicode 対応ではないプログラムの言語を日本語にします。
Set-WinSystemLocale -SystemLocale ja-JP
上記コマンドレットは
[コントロール パネル]→[時計、言語、および地域]→[日付、時刻、または数値の形式の変更]→[管理]→[Unicode 対応ではないプログラムの言語]→[システム ロケールの変更]
の操作に相当します。
003
SystemLocale パラメータは、CultureInfoを指定します。
CultureInfo クラス - Microsoft Developer Network
8.[主な使用場所]を日本にする
ソフトウェアのコンテンツを日本の内容を表示させます。
Set-WinHomeLocation -GeoId 0x7A
上記コマンドレットは
[コントロール パネル]→[時計、言語、および地域]→[地域]→[場所]→[主な使用場所]
の操作に相当します。
image
GeoId パラメータは、[Geographical location identifier]の16進数になります。
Table of Geographical Locations - Microsoft Developer Network
9.日付・時刻の[形式]を表示言語と同一にする
日付と時刻の形式を表示言語と一致させます。
Set-WinCultureFromLanguageListOptOut -OptOut $False
上記コマンドレットは
[コントロール パネル]→[時計、言語、および地域]→[日付、時刻、または数値の形式の変更]→[地域]の[形式(F)]を[Windows の表示言語と一致させます(推奨)]
の操作に相当します。
10.[GUI] [ようこそ画面とシステム アカウント]にチェックを入れる
この操作はGUIから手動で行います。
サインイン画面の言語は英語のままになりますので、[表示/入力/形式/場所]をようこそ画面や他らしいユーザに対しコピーします。
※PowerShellやコマンドを見つけられなかったためです。
設定は
[コントロール パネル]→[時計、言語、および地域]→[日付、時刻、または数値の形式の変更]→[管理]→[設定のコピー]の[ようこそ画面とシステム アカウント(W)]
にチェックを入れます。
image
11.再起動
設定を反映させるため、OSを再起動します。
Restart-Computer 
12.[タイムゾーン]を日本にする
tzutil コマンドを使用し、タイムゾーンを[日本]にします。
tzutil.exe /s “Tokyo Standard Zone_dstoff”
上記コマンドは
[コントロール パネル]→[時計、言語、および地域]→[日付と時刻]→[タイム ゾーンの変更]→[タイム ゾーンの変更]から[(UTC+09:00)大阪、札幌、東京]を選択
の操作に相当します。
Tzutil - Technet
余談:リフレッシュイメージ、リカバリ イメージを作成する手も・・・
運用時にOSの挙動が不安定になる事を想定し、リフレッシュ イメージを作成すると何かと便利です。
recimgコマンドでPCのリフレッシュ用のイメージを作成する - @IT
それ以外に、複数デバイスに展開(デプロイ)するためのツール「Windows ADK 8.1」を使用しリカバリ イメージを作成する手もあります。
こちらはIT Pro向けになるので、
  • 現環境のバックアップ
  • ドキュメントの熟読
を行ってからにしましょう。
また、当然の話ですがライセンスはしっかり守りましょうね。
Windows ADK のインストール
スポンサーリンク

スポンサーリンク