一键搜索之Win10锁屏壁纸
前天无意发现win10的锁屏壁纸挺漂亮的,就想着能不能保存下来?网上一搜果然有资料,当时参考的连接如下
http://jingyan.baidu.com/article/fedf07375ea25135ad897761.html
步骤挺简单的,目录为C:\Users\XXX\AppData\Local\Packages\Microsoft.Windows.ContentDeliveryManager_XXX\LocalState\Assets。但我们最终看到是一堆乱码式的文件,加个.jpg即可访问。感觉挺麻烦的,而且不是所有的文件都是全屏壁纸!

能不能写个搜索的小程序,直接点一下就自动导出壁纸呢!当然是可以的啦(不然也没这篇文章了 ⊙▂⊙)~ 具体解题思路如下
1、获取当前显示器屏幕尺寸,为后面判断是否为全屏壁纸文件做准备
//获取显示器屏幕尺寸,用来判断全屏大小的壁纸
double height = SystemParameters.PrimaryScreenHeight;
double width = SystemParameters.PrimaryScreenWidth;
获取屏幕尺寸
2、获取最终壁纸所在的文件夹(这里写的不太满意 囧rz)
//最终的壁纸目录
string targetPath; //获取当前用户文件夹
string userPath = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile); if (Directory.Exists(userPath + @"\AppData\Local\Packages\"))
{
foreach (var itemF in Directory.GetDirectories(userPath + @"\AppData\Local\Packages\"))
{
//由于这级目录后缀会更换,所以用固定前缀来寻找目录
if (itemF.IndexOf("Microsoft.Windows.ContentDeliveryManager") > )
{
targetPath = itemF + @"\LocalState\Assets";
}
}
}
获取壁纸目录
3、判断是否为全屏壁纸。是则导出,不是则狗带~ (这里判断是否为有效的图片文件,比较粗暴。如果其他好的方法,欢迎指出 ♪(´▽`))
foreach (var itemW in Directory.GetFiles(targetPath))
{
try
{
BitmapImage image = new BitmapImage(new Uri(itemW)); //这里不用用Height和Width属性判断,因为不能保证每张图片都是96dpi
if (image.PixelHeight == height && image.PixelWidth == width)
{
File.Copy(itemW, filePath + string.Format(@"\{0}.jpg", ++i), true);
}
}
catch (NotSupportedException ex)
{
//如果不是图片文件,则继续处理
continue;
}
catch (Exception ex)
{ }
}
判断并导入壁纸
最终的程序如下,一共找了5张壁纸

所有的结果保存在同级目录Assets下面(由程序创建的)。 当然,这几张是我测试用的,不是微软推送的,别想多! 传送门

一键搜索之Win10锁屏壁纸的更多相关文章
- win10锁屏壁纸文件夹位置
Win10默认系统下载的壁纸怎么下载?在哪里找出来呢?首先我们要把系统的锁屏壁纸要设置为Windows聚焦才会自动从微软的服务器上去下载壁纸.这些都是随机下载的.每个人的都Win10 都有可能不一样. ...
- win10锁屏壁纸文件夹Assets中无文件问题的解决方法
一.前言 win10在锁屏时会有很多精美的壁纸,在网上查找到win10锁屏壁纸存放目录为 : C:\Users\你的用户名\AppData\Local\Packages\Microsoft.Windo ...
- Win10锁屏壁纸位置
C:\Users\MIS\AppData\Local\Packages\Microsoft.Windows.ContentDeliveryManager_cw5n1h2txyewy\LocalStat ...
- win10锁屏壁纸路径
C:\Users\ShanYu\AppData\Local\Packages\Microsoft.Windows.ContentDeliveryManager_cw5n1h2txyewy\LocalS ...
- 快速保存Win10锁屏壁纸,收获美丽瞬间
对于写程序而言,每天接触得最多的就是电脑了 所以保持一种开放乐观,豁达美丽的心情是十分有必要的 使用"Everything"工具,输入"LocalState\Assets ...
- win10开机时不显示锁屏壁纸
win10开机壁纸存放在此目录下: C:\Users\%username%\AppData\Local\Packages\Microsoft.Windows.ContentDeliveryManage ...
- 提取win10默认锁屏壁纸
win10锁屏设置为windows聚焦时锁屏会有好看的图片出现.想让一张好看的图片一直使用,就去提取出来然后设置一下. 找到C盘:用户目录下 找到你的主机名文件夹: 在查看的选项栏中将隐藏文件夹显示: ...
- win10锁屏或睡眠一段时间后弹不出登录框
win10锁屏或睡眠一段时间后弹不出登录框 文:铁乐与猫 通常发生在win10更新到10周年版后发生,也就是会卡在登录状态,但不见输入登录框. 我出现这种情况的时候不是很严重,一般等久些也能出现,但问 ...
- Win10 锁屏图片 路径
Win10锁屏图片非常漂亮,下面是获得这些图片的方法: 一. 找到这个路径 C:\Users\UserName\AppData\Local\Packages\Microsoft.Windows.Con ...
随机推荐
- SQL serve创建与调用存储过程
(1)创建 2编写存储过程(创建传参的存储过程)存储过程语法网络上很多不在累述 语法解析 Use Person 指定在那个数据库下建立存储过程 if (object_id('MyFunction', ...
- 将窗口置顶的方法:SetWindowPos、AttachThreadInput、SwitchToThisWindow
将窗口置顶的方法:SetWindowPos.AttachThreadInput.SwitchToThisWindow [转]http://hi.baidu.com/neil_danky/item/f9 ...
- C++学习之友元类和友元函数
C++学习之友元类和友元函数 模板类声明也可以有友元,模板的友元可以分为以下几类: 1.非模板友元: 2.约束模板友元,即就是友元的类型取决于类被实例化的时候的 ...
- .Net 类型、对象、线程栈、托管堆运行时的相互关系
JIT(just in time)编译器 接下来的会讲到方法的调用,这里先讲下JIT编译器.以CLR书中的代码为例(手打...).以Main方法为例: static void Main(){ Cons ...
- 关于Google指令(别提baidu)
关于google指令 关于google指令 google为我们准备好了的"指令"(directive),可以最大限度帮助我们完成每一次搜索.这些指令其实就是一个个关键字,能让我们从 ...
- 为IE6-7间接支持:before和:after伪类
:before和:after我们经常会用到,特别是在做移动端页面时,利用它制作文字前后的ICON.图片的垂直居中之类的非常方便且代码简洁(当然,功能远比这些要多的多...). 可是在PC端,由于现在还 ...
- JavaScript最全的10种跨域共享的方法
在客户端编程语言中,如javascript和ActionScript,同源策略是一个很重要的安全理念,它在保证数据的安全性方面有着重要的意义.同源策略规定跨域之间的脚本是隔离的,一个域的脚本不能访问和 ...
- K-Modes算法[聚类算法]
聚类算法k-Modes的实现 <?php /* *Kmodes算法(聚类算法的实现) */ /* *获取簇的数目 */ //----------------------------------- ...
- codeforces 401D. Roman and Numbers 数位dp
题目链接 给出一个<1e18的数, 求将他的各个位的数字交换后, 能整除m的数的个数. 用状态压缩记录哪个位置的数字已经被使用了, 具体看代码. #include<bits/stdc++. ...
- printf不同格式表示法
格式代码 A ABC ABCDEFGH %S A ABC ABCDEFGH %5S ####A ##ABC ABCDEFGH %.5S A ABC ABCDE %5.5S ####A ##ABC AB ...