systemfolder-move-location (
システムフォルダの「場所」移動 )
update 2014-03-03
環境
Win8.1
概要説明
「ドキュメント」、「デスクトップ」、「お気に入り」、「ダウンロード」フォルダなどをシステムフォルダという。
システムフォルダはレジストリが関連しているので、一般のフォルダのようなフォルダ移動処理はできない。
その代りに「場所」移動(シンボリック リンクを使用したリダイレクト処理)という方法が用意されている。
ここではシステムフォルダーである「ドキュメント」フォルダの「場所移動」について、確認テストを行なってみた。
ドキュメント フォルダは レジストリでは Personal という名前になっている。
テスト中に気付いたこと
(1) エクスプローラのフォルダ名の表示がリアルタイムで更新されない、元に戻らない場合があることに遭遇した。
この場合は再オープン、再ログオン、または再起動してみると更新されるようだが、直らない場合もあった。
(2) 何らかの条件が重なるとエクスプローラのフォルダ名の表示が不安定になることがあるようだ。
たとえば下記のようなケースに遭遇した。
(ケース1)
「標準に戻す」を行なうと場所移動先のフォルダ名で戻ってしまった。(「ドキュメント」という名前にならなかった)
(ケース2)
場所移動先にドライブ(例: H:\ )を指定したら「ドキュメント」の表示が「 H:\ 」になった。
ただし、「標準に戻す」を行なうと、「 H:\ 」の表示が元の「ドキュメント」という表示に戻った。
作業内容
A 「ドキュメント」フォルダのデフォルト状態
A-(1) ドキュメント フォルダなど「特殊フォルダ(Special Folder)」と云われるフォルダがある。

A-(2) ドキュメント フォルダの種類は「システムフォルダー」である。(普通のフォルダーの種類は「ファイルフォルダー」である)

A-(3) ドキュメントフォルダのプロパティの「場所」タブを開くと下記のようになっている。
ファイル名は Documents であることが解る。( フルパスは C:\Users\ユーザー名\Documents )

A-(4) ドキュメントフォルダのレジストリは下記のようになっている。
キー: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders
名前: Personal
データ: C:\Users\ユーザー名\Documents

B 「場所」移動( Location の移動)
B-(1) 移動先の場所として、ドライブ:Hに「場所移動先ドキュメント」 というフォルダを作成しておく。
※フォルダ名としては好ましくないが、テストのための識別しやすい名前として使用している。
フォルダ名を ドキュメント とか Documents などとしておくと、元のフォルダ名と同じなのでかえって解りにくいことになる。
※フォルダを作成しないでドライブのルートフォルダ( H:\ )に移動すると、元に戻す(標準に戻す)際に工夫が必要になる。(後述参照)

B-(2) ドキュメント フォルダのプロパティ「場所」タブを開いて「移動」ボタンをクリック。

B-(3) 移動先の場所として H:場所移動先ドキュメント フォルダを選択する。

B-(4) 「フォルダーの移動」確認画面で移動場所(新しい場所)を確認して「はい」ボタン クリック

場所移動は完了した。
この時点で元の場所の「ドキュメント」と新しい場所の「場所移動先ドキュメント」はリンクが作成されている。
B-(5) ドキュメント フォルダのプロパティを見ると場所が H:\ となっていて「リンクフォルダ」であることがわかる。

B-(6) ドキュメント フォルダのプロパティの「場所」を見ると「H:\場所移動先ドキュメント」になっている。
※ドキュメントフォルダの実体は「H:\場所移動先ドキュメント」フォルダであることがわかる。

B-(7) この時点でレジストリのデータは H:\場所移動先ドキュメント に変更されている。

C 移動先の確認
C-(1) 移動先の「場所移動先ドキュメント」フォルダは名前が変更されて「ドキュメント」となっている。
元の「ドキュメント」のリンクフォルダ名であることが解る。

C-(2) フォルダの種類は一般のフォルダーであるファイルフォルダーとなっている。

C-(3) 「場所」の名前は「H:\場所移動先ドキュメント」フォルダであることがわかる。
リンクフォルダ名は「ドキュメント」であるが、実体は「場所移動先ドキュメント」フォルダであることがわかる。

D 元に戻す( 標準に戻す)
D-(1) 元の場所に戻すには「標準に戻す」をクリックする。
標準の場所が表示される。

D-(2) 場所移動したために元の場所には「Documents」フォルダは存在しないので新たに作成する。

D-(3) すべてのファイルを移動するので「はい」をクリックする。

以上で元のドキュメントの状態に戻った。(「場所」の表示は C:\Users\ユーザー名\Documents に戻っている)
移動先のフォルダ「場所移動先ドキュメント」は消えている。
レジストリは元に戻っている。( データの表示は C:\Users\ユーザー名\Documents に戻っている)
E ドライブのルートフォルダ(H:\ )に場所移動すると・・・
E-(1) 移動先のフォルダ名が指定されていないので、移動先は「 H:\ 」というフォルダ名であると見なされる。

E-(2) レジストリ のデータは 「H:\」 となっている。

E-(3)元に戻す際の「フォルダの移動」の確認画面では「いいえ」を選択する。
「いいえ」を選択するのは下記の理由である。
E-(3-1) 「はい」を選択すると、ドライブ:H にあるすべてのフォルダ、ファイル(「隠し」および「システム」フォルダ、ファイルも含む)が戻す対象になってしまう。
戻したいのは元の「ドキュメント」にあったフォルダ、ファイルだけなのに、余計なフォルダ、ファイルまで含まれてしまう。
E-(3-2) 「システム」フォルダ(例: System Volume Information フォルダ)は戻せないので「アクセス拒否」エラーになってしまう。

E-(4) 「いいえ」を選択して戻すと下記のように元に戻る。(レジストリも元のデータに戻っている)
ただし、「ドキュメント」という環境が戻っただけなので、内容は「空」の状態である。
元の「ドキュメント」にあったフォルダ、ファイルはドライブ:H から手作業で移動させる。

end of list