C# 调用系统“API“设置图片为“桌面壁纸“

Posted 生产队的驴.

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# 调用系统“API“设置图片为“桌面壁纸“相关的知识,希望对你有一定的参考价值。

前言:
这次主要就是写一个音乐软件的 "桌面壁纸海报"但是C#并没有直接的函数设置图片为壁纸,但是可以调用Windown系统的API设置壁纸,也可以配合爬虫等自己写一个”壁纸软件“

什么是系统API(简单介绍):
API就是Windown系统里的一些函数,在C#里提供不了的,但是系统自带的可以给我们使用,可以说就是一个中间商,把东西给他,API在帮我们完成任务

效果:


完整代码:
如需解释往下翻

 [DllImport("user32.dll", EntryPoint = "SystemParametersInfo")]
public static extern int Photo( int uAction, int uParam, string lpvParam, int fuWinIni);

 private void button1_Click(object sender, EventArgs e)
        //按钮点击时发生 
 Photo(20, 0, @"C:\\Users\\Administrator\\Desktop\\q.jpg", 2);
 //调用API


命名空间:

using System.Runtime.InteropServices;

定义方法:

  [DllImport("user32.dll", EntryPoint = "SystemParametersInfo")]
 public static extern int Photo( int uAction, int uParam, string lpvParam, int fuWinIni);

[DllImport(“user32.dll”, EntryPoint = “SystemParametersInfo”)]
表示导入动态链接库”user32.dll“,这个库里包含了很多API函数,要使用他就得导入
*********************
EntryPoint = “SystemParametersInfo”)
user32.dll里有一个"SystemParametersInfo"的API包含了设置桌面背景的功能,


在按钮的点击Event(按键)外定义即可,和方法差不多,其中的string类型就是设置图片的路径


定义好后直接调用即可:

  Photo(20, 0, @"C:\\Users\\Administrator\\Desktop\\q.jpg", 2);

完整代码:

 [DllImport("user32.dll", EntryPoint = "SystemParametersInfo")]
public static extern int Photo( int uAction, int uParam, string lpvParam, int fuWinIni);
//定义方法

 private void button1_Click(object sender, EventArgs e)
        //按钮点击时发生 
 Photo(20, 0, @"C:\\Users\\Administrator\\Desktop\\q.jpg", 2);
 //调用API


纯手打,点个赞呗~

以上是关于C# 调用系统“API“设置图片为“桌面壁纸“的主要内容,如果未能解决你的问题,请参考以下文章

VC++如何获取并保存桌面背景?

怎么把bing 搜索的背景图片或动态图设置成win 10 桌面壁纸, 且桌面壁纸要与bing搜索更新保持同步

win10系统必应壁纸每天更新的图片放在哪里

如何在win10中修改桌面壁纸

将未激活Win10锁屏壁纸设为桌面壁纸

安卓手机设置壁纸为啥不清晰