locked
既定のローカルユーザープロファイルでIMEに入力言語を追加できるようにしたい RRS feed

  • 質問


  • お世話になります。プロファイルのカスタマイズについてご教授いただけると助かります。

    Windows7の大量展開作業にあたり、ユーザープロファイルのカスタマイズをしています。
    手順はMicrosoft様の「プロファイル コピー用応答ファイルの作成」などを
    参考にしております。

     環境:
     OS:Windows7Professional(32bit) ボリュームライセンス
     アプリ:Office2010など


    やりたいことはIME2010の入力言語にデフォルトの日本語のほかに中国語などを追加して、
    利用時にはプルダウンですぐに切り替えられるようにしたいのですが、
    プロファイルコピーの処理でsysprepをかけると設定が既定に戻ってしまいます。

    応答ファイルでは様々な情報を参考に一般的なカスタマイズをしていますが、
    LocaleやLanguageに関わるところは全て日本語にしてるので
    もしかしたらそのあたりも関わってるのかもしれません。

    またsysprepをかけるとでMS-IMEに戻ってしまいますが、
    直前にレジストリを削除することでIME2010にできました。


    この手のカスタマイズはXP環境のときは普通にプロファイルのコピーでできていたのですが、
    Windows7からはsysyprepを使うのが、推奨のやり方と聞いております。

    しかし、sysprepを実行すると、入力言語などの設定が既定に戻るというのも下記にありました。
    (※参考 http://support.microsoft.com/kb/928386/ja


    既定のローカルユーザープロファイルでIMEに入力言語を追加できるようにしたいのですが、
    何か解決方法はありますでしょうか?

    よろしくお願いいたします。

    2011年11月9日 4:01

回答

  • t2tech さん、こんにちは。
    フォーラム オペレーターの田中夢です。

    私の方でも国内外で情報を探してみたところ、アメリカ TechNet フォーラムに同じことを実現しようとしている方のスレッドを見つけました。こちらのスレッドは回答には至っていないようですが、投稿者の JoyeeSim さんは、回避策として、NTUSER.DAT ハイブを編集して、グループポリシーで一度に全てのマシンに設定を配布しているようです。
    同スレッド内にて、Friday, March 19, 2010 に Niall C. Brady  さんがご紹介されているサイトに、Windows 7 で地域と言語、キーボードの設定を変更する方法が記載されていますので、こちらでもご紹介させていただきますね。

    <参考情報>
    - How to Keep the Input Language Settings or Specify them in unattend.xml after Sysprep in Windows 7
    http://social.technet.microsoft.com/Forums/en/configmgrosd/thread/6c3623cf-2090-4212-840a-498850bef38c

    - Ntuser.dat ハイブ新しいユーザー取得変更する設定を定義します。
    http://support.microsoft.com/kb/146050/ja
    (こちらの日本語情報は機械翻訳となっていますので、英語の原文コンテンツも参照しながらご確認ください。)

    - Customising Windows 7 deployments - part 1.
    http://www.windows-noob.com/forums/index.php?/topic/1660-customising-windows-7-deployments-part-1/


    また、アメリカの TechNet フォーラムに入力言語の設定をグループポリシーで配布する方法についてのスレッドもありました。私も Windows 7 Enterprise の PC にて、レジストリに英語キーボードの値を追加してみたところ、英語の入力言語の設定が追加されました。
    この設定をグループポリシーで配布する方法も、ひとつの回避策として参考になるかと思われますので、ご紹介させていただきますね。

    例)
    1. レジストリ エディターを開く
    2. HKEY_CURRENT_USER\Keyboard Layout\Preload を右クリックし、[新規] - [文字列値] をクリックする
    3. 値の名前を、入力する。(既存の値が1しかない場合は2にします。2まである場合は3にします。)
    4. 作成した値を右クリックし、修正をクリックし、 [値のデータ] に00000409 と入力します。(英語のキーボードです。)
    5. レジストリ エディターを閉じる。
    6. 一度ログオフしてから再度ログオンすると、入力言語に英語が追加されていました。

    <参考情報>
    - additional input language through PGO
    http://social.technet.microsoft.com/Forums/en/winserverGP/thread/eb1c1823-3588-4fea-8f07-bcc876048bf2


    こちらの情報が少しでもお役にたてば幸いです。
    ---------------------------------------------------------------------
    日本マイクロソフト株式会社 フォーラム オペレーター 田中夢

    • 回答としてマーク 星 睦美 2011年11月30日 6:48
    2011年11月15日 6:19
  • >値のデータを調べる方法はありますでしょうか?

    たぶん、これかな?

    Locale IDs, Input Locales, and Language Collections for Windows XP and Windows Server 2003
    http://msdn.microsoft.com/en-us/goglobal/bb895996

    以上、参考になれば幸いです。


    MVP:Virtual Machine Blog:MCTの憂鬱 http://naonao71.wordpress.com/
    • 回答としてマーク 星 睦美 2011年11月30日 6:48
    2011年11月17日 1:27

すべての返信

  • t2tech さん、こんにちは。
    フォーラム オペレーターの田中夢です。

    私の方でも国内外で情報を探してみたところ、アメリカ TechNet フォーラムに同じことを実現しようとしている方のスレッドを見つけました。こちらのスレッドは回答には至っていないようですが、投稿者の JoyeeSim さんは、回避策として、NTUSER.DAT ハイブを編集して、グループポリシーで一度に全てのマシンに設定を配布しているようです。
    同スレッド内にて、Friday, March 19, 2010 に Niall C. Brady  さんがご紹介されているサイトに、Windows 7 で地域と言語、キーボードの設定を変更する方法が記載されていますので、こちらでもご紹介させていただきますね。

    <参考情報>
    - How to Keep the Input Language Settings or Specify them in unattend.xml after Sysprep in Windows 7
    http://social.technet.microsoft.com/Forums/en/configmgrosd/thread/6c3623cf-2090-4212-840a-498850bef38c

    - Ntuser.dat ハイブ新しいユーザー取得変更する設定を定義します。
    http://support.microsoft.com/kb/146050/ja
    (こちらの日本語情報は機械翻訳となっていますので、英語の原文コンテンツも参照しながらご確認ください。)

    - Customising Windows 7 deployments - part 1.
    http://www.windows-noob.com/forums/index.php?/topic/1660-customising-windows-7-deployments-part-1/


    また、アメリカの TechNet フォーラムに入力言語の設定をグループポリシーで配布する方法についてのスレッドもありました。私も Windows 7 Enterprise の PC にて、レジストリに英語キーボードの値を追加してみたところ、英語の入力言語の設定が追加されました。
    この設定をグループポリシーで配布する方法も、ひとつの回避策として参考になるかと思われますので、ご紹介させていただきますね。

    例)
    1. レジストリ エディターを開く
    2. HKEY_CURRENT_USER\Keyboard Layout\Preload を右クリックし、[新規] - [文字列値] をクリックする
    3. 値の名前を、入力する。(既存の値が1しかない場合は2にします。2まである場合は3にします。)
    4. 作成した値を右クリックし、修正をクリックし、 [値のデータ] に00000409 と入力します。(英語のキーボードです。)
    5. レジストリ エディターを閉じる。
    6. 一度ログオフしてから再度ログオンすると、入力言語に英語が追加されていました。

    <参考情報>
    - additional input language through PGO
    http://social.technet.microsoft.com/Forums/en/winserverGP/thread/eb1c1823-3588-4fea-8f07-bcc876048bf2


    こちらの情報が少しでもお役にたてば幸いです。
    ---------------------------------------------------------------------
    日本マイクロソフト株式会社 フォーラム オペレーター 田中夢

    • 回答としてマーク 星 睦美 2011年11月30日 6:48
    2011年11月15日 6:19
  • t2techです。(諸事情で別IDから投稿しています)

    田中様、ご回答ありがとうございます。

     

    ご紹介いただいた情報が英文なので私には理解に時間がかかりそうですが、

    参考にさせていただきます。

     

    レジストリでキーボードの値を追加する方法は、すぐにでも試してみたいのですが、

    値のデータを調べる方法はありますでしょうか?

    こちらで追加した言語は「簡体字中国語 Microsoft Pinyin New Experience」というものです。

     

     

    2011年11月16日 5:42
  • >値のデータを調べる方法はありますでしょうか?

    たぶん、これかな?

    Locale IDs, Input Locales, and Language Collections for Windows XP and Windows Server 2003
    http://msdn.microsoft.com/en-us/goglobal/bb895996

    以上、参考になれば幸いです。


    MVP:Virtual Machine Blog:MCTの憂鬱 http://naonao71.wordpress.com/
    • 回答としてマーク 星 睦美 2011年11月30日 6:48
    2011年11月17日 1:27
  • ABE NAOKI 様

    情報ありがとうございます。大変参考になります。

    さらに一歩前進した気がします。

    中国語簡体字はおそらく Chinese_PRC だと思いますので、

    あとは さらに詳細なキーボードの種類があるので

    ” Valid Locale ID:InputLocale combinations ”

    あたりが関係あるのかな?という気がしております。

    2011年11月17日 6:09
  • こんにちは。
    フォーラム オペレーターの田中夢です。

    ABE NAOKI さん
    参考になるサイトをご紹介していただき、ありがとうございます。
     
    t2tech さん
    下記の方法で確認できるかと思いますよ。

    1. レジストリ エディターを起動し、HKEY_CURRENT_USER\Keyboard Layout\Preload を確認する。
    2. テキストサービスと入力言語から、入力言語を追加する。
    3. レジストリ エディターを最新の情報に更新する

    上記作業でレジストリ エディターに増えた値が、2 で追加した入力言語と考えられますので、値のデータを確認してみてくださいね。


    この情報が少しでも参考になれば幸いです。 
    ---------------------------------------------------------------------
    日本マイクロソフト株式会社 フォーラム オペレーター 田中夢

    2011年11月17日 7:59
  • 田中様

    ご回答ありがとうございます。良く考えてみればそうですよね。。

    手前のPCにて入力言語を追加してレジストリエディタで値が確認できました。

     値のデータ:00000804

    今度は実環境にて試してみます。

     

     

     

    2011年11月17日 8:47
  • t2tech さん、こんにちは
    フォーラム オペレーターの星 睦美です。

    ABE NAOKI さんと弊社の田中の回答が 参考になったようですね。
    今回は私のほうで[回答としてマーク]させていただきました。

    よろしければt2tech さんが試された結果もお知らせいただけると
    さらにTechNet フォーラムで役立つ情報になると思います。

    では今後ともTechNet フォーラムをよろしくお願いします


    日本マイクロソフト株式会社 フォーラム オペレーター 星 睦美
    2011年11月30日 6:52
  • 星 様

    お世話になっております。

     

    実はまだ未解決です。2つ問題があります。

    ひとつは、追加できたキーボードは「中国語(簡体字)-US Keyboard」というものになりました。

    実際に使用したいのは、「簡体字中国語-Microsoft Pinyin New Experience」というものです。

    IMEの設定でこれを追加して、後でレジストリを参照して得た値を使ったのですが、

    今回追加したキーだけでは不十分で、まだ追加情報が必要なのかもしれません。

     

    もうひとつは、

    HKEY_CURRENT_USER\Keyboard Layout\Preload に値を追加することで、

    キーボード追加できるのはカレントユーザのみで、別のユーザには反映されないようです。

    ドメイン環境で複数ユーザが利用するので、毎回新規ユーザが作成されるのですが、

    新しいユーザには反映されませんでした。(そのためにデフォルトユーザプロファイルの固定が必要。。)

    試しに、HKEY_USERS\.DEFAULT\Keyboard Layout\Preload かな?と思い試してみましたが、

    これも駄目でした。レジストリ操作の基本的なところでつまずいてるのかもしれませんが。。

     

    あるいは、結局のところ、このあたりの情報はプロファイルで持ってるのでしょうか?

     

    2011年11月30日 8:31