bon_sai_se
@bon_sai_se (凡才 SE)

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

Win10でユーザー名変更に伴うディレクトリ一括変更方法を教えてください

解決したいこと

windows10を使用しているのですが、ユーザー名を日本語にしてしまっていたのが原因で、不具合が出てしまいました。

それを解決するために、下記リンクの記事を参考に、ユーザー名を変更しました。

参考リンク↓
https://www.pasoble.jp/windows/10/user-folder-rename.html

最後の工程として、レジストリエディターにて旧ユーザー名から新ユーザー名に変える作業を手作業で行っているため、途方もない作業となっています。
そこで、旧ユーザー名が付いたディレクトリを一括で新ユーザー名に変更する方法はないでしょうか?

自分で試したこと

上記のリンクを参考にし、レジストリエディターにて「コンピューター」を選択した状態でctrl + Fで検索ボックスを開き、「C:\Users\旧ユーザー名」と検索。
すると、旧ユーザー名が入ったディレクトリが表示されるので、ダブルクリックで新ユーザー名に変更。という作業をかれこれ二時間半続けましたが、正直終わりが見えません。
コマンドプロンプトなどで一括に変更できる方法などございましたら、
教えていただけると本当に助かります、、、。

0

1Answer

「新ユーザー名をUTF16-LEの16進数に変換したものを用意」
ex: 新ユーザー名B0,65,E6,30,FC,30,B6,30,FC,30,0D,54
が可能ならば一応一括設定が可能です。

  1. regeditで\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileListを選択。
  2. メニューバーから[ファイル]-[エクスポート]を選択し、わかりやすいファイル名をつけて適当な場所に保存。
  3. エクスポートした*.regファイルをテキストエディタで開く。
  4. [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\S-x-x-...]"ProfileImagePath"=hex(2):...以外の行は不要なので削除。
  5. "ProfileImagePath"=hex(2):の後を設定したいフォルダ名(を16進数にしたもの)に置き換え。
  6. 編集した*.regファイルを保存。
  7. 編集した*.regファイルをregeditにインポート

フォルダ名の16進エンコードが大変ですが、ひとつのテキストファイルでまとめて行えるので手数はかなり減らせると思います。

0Like

Comments

  1. @bon_sai_se

    Questioner

    ありがとうございます。
    帰宅したら試してみようと思います。

  2. @bon_sai_se

    Questioner

    新しいユーザー名は「host」にするつもりなのですが、変換サイトで以下のように変換されましたが、認識合ってますかね。

    変換後↓
    「68006F0073007400」

  3. 大事なことが抜けてたので追記します。

    • ProfileImagePathが25,00,で始まっているものはシステムアカウントで変更するとかなりまずいので必ず削除してください。
    • ProfileImagePathはフルパスで書く必要があるので、フォルダ名は「一番最後の5C,00,より後ろに入力」とする必要があり、フォルダ名の最後には,00,00を追加しなければいけない。

    例:C:\Users\userC:\Users\hostに変更

    "ProfileImagePath"=hex(2):43,00,3a,00,5c,00,55,00,73,00,65,00,72,00,73,00,5c,\
    -   00,75,00,73,00,65,00,72,00,00,00
    +   00,68,00,6f,00,73,00,74,00,00,00
    

Your answer might help someone💌