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

简介: 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
}

纯手打,点个赞呗~

相关文章
|
17天前
|
数据采集 JavaScript C#
C#图像爬虫实战:从Walmart网站下载图片
C#图像爬虫实战:从Walmart网站下载图片
|
2月前
|
JSON API 数据处理
Winform管理系统新飞跃:无缝集成SqlSugar与Web API,实现数据云端同步的革新之路!
【8月更文挑战第3天】在企业应用开发中,常需将Winform桌面应用扩展至支持Web API调用,实现数据云端同步。本文通过实例展示如何在已有SqlSugar为基础的Winform系统中集成HTTP客户端调用Web API。采用.NET的`HttpClient`处理请求,支持异步操作。示例包括创建HTTP辅助类封装请求逻辑及在Winform界面调用API更新UI。此外,还讨论了跨域与安全性的处理策略。这种方法提高了系统的灵活性与扩展性,便于未来的技术演进。
175 2
|
2月前
|
开发框架 缓存 前端开发
基于SqlSugar的开发框架循序渐进介绍(23)-- Winform端管理系统中平滑增加对Web API对接的需求
基于SqlSugar的开发框架循序渐进介绍(23)-- Winform端管理系统中平滑增加对Web API对接的需求
|
7天前
|
敏捷开发 人工智能 API
如何快速部署大模型接口管理和分发系统:One-API
One API 是一个开源的接口管理与分发系统,支持多种大模型平台如 OpenAI、Google PaLM 2、百度文心一言等。通过统一接口访问不同大模型服务,简化工作流程并提高效率。适用于多模型集成项目、开发代理服务、教育研究及快速原型制作等多种场景。阿里云计算巢提供了快速部署方案,简化了部署过程。
|
2月前
|
监控 Cloud Native 容灾
核心系统转型问题之API网关在云原生分布式核心系统中的功能如何解决
核心系统转型问题之API网关在云原生分布式核心系统中的功能如何解决
|
27天前
|
关系型数据库 数据库 PostgreSQL
在C#中获取与设置Windows的字符编码方式
通过以上步骤,你可以在Docker环境下有效地重启PostgreSQL服务。这对于维护数据库健康、应用更新或环境配置更改后确保数据库服务正常运行至关重要。根据你的具体需求和环境设置,选择合适的方法来执行重启操作。
11 0
|
2月前
|
开发框架 人工智能 自然语言处理
基于ChatGPT的API的C#接入研究
基于ChatGPT的API的C#接入研究
|
3月前
|
API 数据库 数据安全/隐私保护
Django配置api、管理系统和视图
Django配置api、管理系统和视图
68 1
|
2月前
|
开发框架 Unix Linux
LangChain 构建问题之在Unix/Linux系统上设置OpenAI API密钥如何解决
LangChain 构建问题之在Unix/Linux系统上设置OpenAI API密钥如何解决
41 0
|
分布式数据库 API
C# API方式串口读写
我的串口程序修改为API方式后,实际发现与SerialPort类遇到同样的问题,所以SerialPort类还是值得信任的。该API方式的代码在WinCE平台和PC平台都调试通过
1074 0