关键代码:
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);参数说明:
- uiAction:该参数指定要查询或设置的系统级参数。
- uiParam:uiParam 在参数说明中所有为ulParam均为错误。(一般取值0)
- pvParam:与查询或设置的系统参数有关。(如果设置壁纸,就填写图片地址)
- fWinlni:如果设置系统参数,则它用来指定是否更新用户配置文件。(取值0或下面表格中任意一项)
SPIF_UPDATEINIFILE 把新的系统参数的设置内容写入用户配置文件。 SPIF_SENDCHANGE 在更新用户配置文件之后广播WM_SETTINGCHANGE消息。
SystemParametersInfo函数有4个参数,主要为:(与函数原型相对应)
- SPI_SETDESKWALLPAPER:设置桌面壁纸。
- 第2个参数一般设置为0,即可。
- 第3个参数填上图片所在位置
- 第4个参数可以填0,或者SPIF_UPDATEINIFILE | SPIF_SENDCHANGE
代码示例(仅供参考)
#include#include #include 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; }
保存的图片位置:



