URAMIRAIKAN

1020のなれの果て (since 2005.6.19)

フォルダリダイレクト環境で、IMEに登録した単語が保存されない

 Windows 7 + Offcie 2010を使っている環境で、この問題が発生したので調査していました。
 移動ユーザープロファイル + フォルダリダイレクトもお約束ですね。

 過去には、

[IME2002]移動ユーザープロファイル使用時にユーザー辞書に単語登録が反映されない
 移動ユーザー プロファイルをサーバー環境にて作成し、クライアントからログオンして IME 2002 の単語/用例登録に単語を登録後に再度ログオンし直したとき、ユーザー辞書ファイルに登録が反映されない場合があります。

Windows XP の移動プロファイルの設定で Application DATA の新しいフォルダへの移動を設定しないとユーザー辞書ファイルが使用できない
 ドメインポリシーにおいて、ApplicationData のリダイレクトを設定する際に、 「ApplicationData の内容を新しい場所に移動する」の設定項目のチェックを外した状態では、リダイレクト先の共有フォルダに IME が使用する「imjp8_1」フォルダが作成されません。この結果、クライアント上で作成したユーザー辞書のデータが保存できません。
 ユーザー辞書を登録しようとすると以下のエラーメッセージが表示されます。
 「ユーザ辞書(リダイレクト先のパス)のオープンに失敗しました」

移動ユーザー プロファイルを使用した場合 IME 2007 および IME 2010 の学習情報が保存されない
 移動ユーザー プロファイルを使用した場合、Microsoft Input Method Editor 2007 (IME 2007) または Microsoft Office Input Method Editor 2010 (IME 2010) のプロパティで [学習情報をファイルに保存する] を有効にしても、Windows に再ログオンすると学習した変換情報が無効になり保存されません。

といった問題があるのは認識していましたが、今回の問題とは違いそうでした。

 とりあえずお客様の環境を調べると、

  1. ユーザー辞書ファイルは"%APPDATA%\Microsoft\IMJP14\imjp14cu.dic"として存在
  2. "%APPDATA%"はフォルダリダイレクトされている
  3. 単語登録はできない(保存されない)
  4. ユーザー辞書ファイルをフォルダリダイレクト対象以外の場所(ユーザープロファイルの中)に移動すると単語登録でき、ログオフ/ログオンしても保存される

 「まずは早く使えるようにしてくれ」と言われていたので、とりあえず上記の4の結果から、ログオンスクリプトで辞書ファイルの場所を移すことにしました。

 サラッと書いたので「こんなのでいいのかな?」と思いつつ、当面の目的は達成。

@ECHO OFF SETLOCAL REM ------------------------------------------------------------ REM IME14 辞書ファイルのレジストリ SET KEY=HKEY_CURRENT_USER\Software\Microsoft\IMEJP\14.0\Dictionaries SET VALNAME=DIC00 REM 辞書ファイルの移動先 SET DATA=%USERPROFILE%\Microsoft\IMJP14\imjp14cu.dic,1 REM 辞書ファイルの既定の場所 SET SOURCEDIC=%APPDATA%\Microsoft\IMJP14\imjp14cu.dic REM ------------------------------------------------------------ REM Windows XPなら何もせずに終了 FOR /f "tokens=3 delims= " %%I IN ( 'ver') DO SET VER=%%I IF "%VER%" == "XP" ( EXIT 0 ) REM (設定済みチェック) 既に完了していたら、何もせずに終了 FOR /F "tokens=3 delims= " %%I in ('reg query "%KEY%" /v "%VALNAME%"') DO SET RESULT=%%I IF "%RESULT%" == "%DATA%" ( EXIT 0 ) REM IME14 辞書ファイルを移動(レジストリ変更) reg add "%KEY%" /v "%VALNAME%" /d "%DATA%" /f mkdir %USERPROFILE%\Microsoft\IMJP14\ REM 既定の場所にファイルが存在している場合はコピー IF EXIST %SOURCEDIC% ( xcopy /D /H /Y /R %SOURCEDIC% %USERPROFILE%\Microsoft\IMJP14\ ) exit 0

 そんなわけで応急処置はしたので、あとは原因を調べないと行けませんね。
 もう少し、この件で引きずられそうです。


            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30            

プロフィール

1020@管理人

都内を彷徨っているインフラエンジニアとかいう雑用係。いつだって眠い…。

最近のつぶやき

@umkn1020 (11/27-17:58)
RT @takapon_jp: 良心的ってのも考えようで、結局高く売ることができなかった結果だったりもする。良いものを安く売るのは実はすごく簡単でみんな楽をしがちなんだよね。高く売るには頑張って営業努力しないといけない https://t.co/rPPgLew7is
@umkn1020 (11/27-17:55)
RT @cruelice: Amazonはもはや「いいものを探して買う」という場ではなくて、「特定のメーカーの決まったものを買う」または「粗悪でいいから安いものを買う」という用途だよね。 https://t.co/dR1kfTjv9J
@umkn1020 (11/27-08:16)
RT @rocaz: ダセえ…。またWindowsとIE11縛りかよ。 一つ公共システムがスマホでのマイナカードログイン対応したりExcelのセル結合禁止()したりで幾ら喜んだところで、こんなシステムがあと幾つ残ってるんだろうか?数十はありそう。一体いつ撲滅されるの?早くても5…
@umkn1020 (11/26-20:07)
価格は相変わらずなんですね
@umkn1020 (11/26-20:06)
シャープマスク当選の案内がきたんだけど、これって一度当選している人も延々と抽選対象として続いているの?

エントリーリスト

カテゴリーリスト

タグ