Windows 10で特定フォルダ間のドラッグ・アンド・ドロップが不可能になった場合の解決法

Windows 10で少し前から奇妙な現象に多少イライラさせられていた。

たとえば自分のユーザーフォルダ配下のPicturesフォルダ内に、フォルダAとフォルダBを作成したとする。

そのフォルダAからフォルダBへ、任意の画像ファイルをカット・アンド・ペーストによる移動はできるのに、マウスのドラッグ・アンド・ドロップによる移動はできない。

その解決方法が書いてあるページが見つかった。

No drag and drop in Windows Explorer (and other oddities)
(Windows Ten Forums)

このページのGammelsmurfという人の2016/10のエントリーがその解決方法。

レジストリをいじったうえに、エクスプローラーのオプションを変更して、エクスプローラーのプロセスを再起動するという、非常に面倒なことをやって、やっとドラッグ・アンド・ドロップができるようになった。

以下、レジストリの変更は自己責任で。

簡単に翻訳すると、シェルのドラッグ・アンド・ドロップ・ヘルパーのレジストリキーは、Windows 10のレジストリの下記の位置にある。
HKEY_CLASSES_ROOT\CLSID\{4657278A-411B-11d2-839A-00C04FD918D0}

この{4657278A-411B-11d2-839A-00C04FD918D0}というキーを、ディレクトリとフォルダのシェル拡張機能で有効にすれば、ディレクトリとフォルダでドラッグ・アンド・ドロップができるようになるはず。

ということで、以下の2つのレジストリキーを追加する。キーを追加するだけでよく、値は追加する必要はない。

HKEY_CLASSES_ROOT\Directory\shellex\DragDropHandlers\{4657278A-411B-11d2-839A-00C04FD918D0}

HKEY_CLASSES_ROOT\Folder\shellex\DragDropHandlers\{4657278A-411B-11d2-839A-00C04FD918D0}

さらにエクスプローラーのクイックアクセス機能をレジストリで無効化している場合は、復活させる必要がある。

HKEY_CLASSES_ROOT\CLSID\{679f85cb-0220-4080-b29b-5540cc05aab6}\ShellFolder

このレジストリキーにあるAttributesというREG_DWORD型の値を、a0600000から初期値のa0100000に戻す。

以上のレジストリキーの追加と値の変更が終わったら、エクスプローラーを開いて、フォルダオプションを開く。

そして「全般」タブの「プライバシー」欄の「最近使ったファイルをクイックアクセスに表示する」のチェックマークをONにして、クイックアクセスをいったん有効にし、OKボタンをクリックする。

ここまでやってPCを再起動するか、タスクマネージャーからエクスプローラーのプロセスだけを再起動する。

以上、どうしてクイックアクセスを無効にしたら、同一フォルダ配下のサブフォルダ間でドラッグ・アンド・ドロップが不可能になるなんていう変なことになるのか、Windows 10の仕様が全く理解できないが、マイクロソフト製品というのは昔からそんなものなので仕方ない。