粗大メモ置き場

個人用,たまーに来訪者を意識する雑記メモ

Windows10のロック解除画面の壁紙抽出

Windows10から追加された謎の壁紙のありか

Windows10のOne of 謎機能ですがWindowsの起動時になんか綺麗な壁紙が設定されるようになりましたね。
時々気に入った画像とかもあるので何とかして元のファイルを手に入れたいと思っていた所,
居場所を特定したので掘り出し方を解説したいと思います。


今回の掘り出しの結果です。割りと満足。
f:id:ossyaritoori:20170606192053p:plain

綺麗な壁紙のデータのある場所

端的にいうと,ユーザー以下の,
「\AppData\Local\Packages\Microsoft.Windows.ContentDeliveryManager_cw5n1h2txyewy\LocalState\Assets」
という所にあります。

ぱっと言われてもわからない人のために

まず,左の欄の「PC」と書かれた所をクリックして,
下のようなものを探してダブルクリックします。
f:id:ossyaritoori:20170606193521p:plain
これが俗に言う「Cドライブ」ってやつです。

何故Cなのかは結構面白い理由があるのでぜひ調べてみてください。

次に,中を見てみると「ユーザ」と書かれたフォルダがあるはずです。
f:id:ossyaritoori:20170606193730p:plain
この中に入った後に,貴方のPCのユーザ名(PassWordを入れる時に出てくる名前)のフォルダが出てくるのでそれをクリックしてください。

その後は,「AppData],「Local」と上の赤字の¥マークで区切られている順にファイルを探していってください。

AppDataってフォルダが見つからない?

それはエクスプローラーが標準で隠しフォルダを表示する設定になっていないからです。

エクスプローラーの上の方にある「表示」というタブをクリックすると以下のような画面が出るかと思います。
f:id:ossyaritoori:20170606194402p:plain
黄色の線で強調した所がきちんとチェックされていることを確認して下さい。

また,左にある「レイアウト」で< 大アイコン >や< 詳細 >となっている箇所も後で使うので覚えておいてください。

ファイルの場所にたどり着いたら

ファイルの場所にたどり着いたら以下のような英数字の羅列が名前になったファイルが見れると思います。
f:id:ossyaritoori:20170606194722p:plain
これらが実は画像データなのです。

まずはファイルをコピーする

フォルダの中身をまずピクチャ以下のフォルダかなんかに退避させましょう。
一般的に隠しフォルダの中身をいじるのはおすすめできません。

ファイルを大きさ順にソート

ファイルをサイズ順にソートしましょう。
まずエクスプローラーの上部をクリックして「レイアウト」にて< 詳細 >をクリックしてください。
f:id:ossyaritoori:20170606194402p:plain

すると右の方に先程の画像と同じように「1090KB」などのサイズが出てくるはずです。
右上の方にある「サイズ」という欄をクリックするとサイズの大きい順,小さい順にソートする事ができます。

このうち,壁紙に使われるファイルサイズは基本的に数百KBですので2桁以下のサイズのファイルは全て削除して構いません。
必ずコピーしたファイルに対して変更を適用すること!

ファイルの復元の仕方

ファイルを復元するには適切な拡張子をつけてあげればいいです。
この場合,「.jpg」を後ろにつけます。

すなわち,「kabegami1.jpg」というように名前を変えることで画像を読み取れます。
読み取れない場合,「表示」以下「拡張子」というチェックボックスがOnになっているか(「AppDataが見つからない?」で黄色線を引いた箇所)
実は画像以外のファイルだったというのが考えられます。画像以外のファイル出会った場合は消してしまいましょう。

名前を変更する際は「F2」キーを押すとすぐ変更できて便利です。

追記:有志による名前変更用Python Script

コメントにて,自動でRenameを施してくれるPythonコードをいただきました。
先程までの冒険者の気分から一転して文明的な収穫者の気持ちになれます(?)
サイズを見て自動で切り捨てるところまで書けば口を開けていれば壁紙が手に入る,そんな夢(?)のような運用も可能ですね。

#!/usr/bin/env python
# coding: UTF-8
import sys
import os
import re
a = 1

files = os.listdir('D:\wallpaper')
for file in files:
os.rename(file, "image%06d.jpg" %(a))
a+=1

お気に入りの壁紙を探そう!

以上になります。なんか隠されたファイルを探すワクワク感と綺麗な壁紙を掘り出す達成感でなかなか楽しい遊びではないでしょうか。

なお,今回の僕のお気に入りはこれです。
f:id:ossyaritoori:20170606195853p:plain

これらの画像は定期的に何処かでダウンロードされて更新されるので気になる画像が出てきたらこうして掘削してみるのも面白いかもしれません。
それでは。