C语言实现设置桌面壁纸

关键代码:

SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "C:\\Users\\star-dream\\Pictures\\Saved Pictures\\1.jpg", SPIF_SENDCHANGE|SPIF_UPDATEINIFILE);

更多资料,请参考百度百科

今天的主角是:如何通过C语言实现桌面壁纸

函数原型:

BOOL SystemParametersInfo(UINT uiAction,UINT uiParam,PVOID pvParam,UINT fWinlni);

参数说明:

  1. uiAction:该参数指定要查询或设置的系统级参数。
  2. uiParam:uiParam 在参数说明中所有为ulParam均为错误。(一般取值0
  3. pvParam:与查询或设置的系统参数有关。(如果设置壁纸,就填写图片地址
  4. fWinlni:如果设置系统参数,则它用来指定是否更新用户配置文件。(取值0或下面表格中任意一项
SPIF_UPDATEINIFILE把新的系统参数的设置内容写入用户配置文件。
SPIF_SENDCHANGE在更新用户配置文件之后广播WM_SETTINGCHANGE消息。

SystemParametersInfo函数有4个参数,主要为:(与函数原型相对应)

  1. SPI_SETDESKWALLPAPER:设置桌面壁纸。
  2. 第2个参数一般设置为0,即可。
  3. 第3个参数填上图片所在位置
  4. 第4个参数可以填0,或者SPIF_UPDATEINIFILE | SPIF_SENDCHANGE

代码示例(仅供参考) 

#include <stdio.h>
#include <stdlib.h>
#include <Windows.h>

void menu()
{
	printf("----------------------\n");
	printf("|      1.樱花        |\n");
	printf("|      2.精美        |\n");
	printf("|      3.风景        |\n");
	printf("|      4.循环        |\n");
	printf("----------------------\n");
}
 
int main()
{
	
	int choice = 0;
	int count = 10;

	menu();
	printf("请输入选项:");
	scanf("%d",&choice);

	switch(choice)
	{
		case 1:
			SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "C:\\Users\\star-dream\\Pictures\\Saved Pictures\\1.jpg", SPIF_SENDCHANGE|SPIF_UPDATEINIFILE);
			break;
		case 2:
			SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "C:\\Users\\star-dream\\Pictures\\Saved Pictures\\2.jpg", SPIF_SENDCHANGE|SPIF_UPDATEINIFILE);
			break;
		case 3:
			SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "C:\\Users\\star-dream\\Pictures\\Saved Pictures\\3.png", SPIF_SENDCHANGE|SPIF_UPDATEINIFILE);
			break;
		case 4:
			while(count)
			{
				SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "C:\\Users\\star-dream\\Pictures\\Saved Pictures\\1.jpg", SPIF_SENDCHANGE|SPIF_UPDATEINIFILE);
				Sleep(2000);
				SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "C:\\Users\\star-dream\\Pictures\\Saved Pictures\\2.jpg", SPIF_SENDCHANGE|SPIF_UPDATEINIFILE);
				Sleep(2000);
				SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "C:\\Users\\star-dream\\Pictures\\Saved Pictures\\3.png", SPIF_SENDCHANGE|SPIF_UPDATEINIFILE);
				Sleep(2000);
				count--;
			}
			break;
	}
	return 0;
}

 保存的图片位置:

 

posted @ 2022-06-10 20:23  辰梦starDream  阅读(47)  评论(0编辑  收藏  举报  来源