zoukankan      html  css  js  c++  java
  • windows 桌面背景设置实例

      应用SystemParametersInfo函数可以获取和设置数量众多的windows系统参数。这个小程序就是运用了SystemParametersInfo函数来设置桌面的墙纸背景,而且程序可以让我们选择多幅墙纸图片,程序会以一定的时间间隔自动改变墙纸。

      1 #include<stdio.h>
      2 #include<windows.h>
      3 int main()
      4 {
      5     //i 代表图片的数量
      6     /*
      7     BOOL WINAPI SystemParametersInfo(
      8   _In_    UINT  uiAction,
      9   _In_    UINT  uiParam,
     10   _Inout_ PVOID pvParam,
     11   _In_    UINT  fWinIni
     12 );
     13     其中各参数的意义如下表:
     14 
     15 参数: 意义
     16 
     17 uAction Long,指定要设置的参数。参考uAction常数表
     18 
     19 uParam Long,参考uAction常数表
     20 
     21 lpvParam Any,按引用调用的Integer、Long和数据结构。
     22 
     23 fuWinIni 这个参数规定了在设置系统参数的时候,是否应更新用户设置参数
     24 
     25 下面是部分uAction参数,和使用它们的方法:
     26 
     27 参数    意义和使用方法  
     28 
     29 6    设置视窗的大小,SystemParametersInfo(6, 放大缩小值, P, 0),lpvParam为long型
     30 
     31 17    开关屏保程序,SystemParametersInfo(17, False, P, 1),uParam为布尔型
     32 
     33 13,24    改变桌面图标水平和垂直间距,uParam为间距值(像素),lpvParam为long型
     34 
     35 15    设置屏保等待时间,SystemParametersInfo(15, 秒数, P, 1),lpvParam为long型
     36 
     37 20    设置桌面背景墙纸,SystemParametersInfo(20, True, 图片路径, 1)
     38 
     39 93    开关鼠标轨迹,SystemParametersInfo(93, 数值, P, 1),uParam为False则关闭
     40 
     41 97    开关Ctrl+Alt+Del窗口,SystemParametersInfo(97, False, A, 0),uParam为布尔型
     42     */
     43     for (int i = 0; i < 5; i++)
     44     {
     45         char str[100] = {0};
     46         sprintf(str,"D:\Picture\%d.jpg",i%5);
     47         SystemParametersInfoA(20,0,str,3);//20代表设置桌面系统背景图片 3.立即生效
     48         //sprintf(str,"D:\Picture\%d.jpg",i%5);
     49         /*
     50         ShellExecute的功能是运行一个外部程序(或者是打开一个已注册的文件、打开一个目录、
     51         打印一个文件等等),并对外部程序有一定的控制
     52         ShellExecute(
     53 
     54         hWnd: HWND; {指定父窗口句柄}
     55 
     56         Operation: PChar; {指定动作, 譬如: open、runas、print、edit、explore、find }
     57 
     58         FileName: PChar; {指定要打开的文件或程序}
     59 
     60         Parameters: PChar; {给要打开的程序指定参数; 如果打开的是文件这里应该是 nil}
     61 
     62         Directory: PChar; {缺省目录}
     63 
     64         ShowCmd: Integer {打开选项}
     65 
     66         ): HINST;
     67 
     68         ShowCmd 参数可选值:SW_HIDE = 0; {隐藏}
     69 
     70         SW_SHOWNORMAL = 1; {用最近的大小和位置显示, 激活}
     71 
     72         SW_NORMAL = 1; {同 SW_SHOWNORMAL}
     73 
     74         SW_SHOWMINIMIZED = 2; {最小化, 激活}
     75 
     76         SW_SHOWMAXIMIZED = 3; {最大化, 激活}
     77 
     78         SW_MAXIMIZE = 3; {同 SW_SHOWMAXIMIZED}
     79 
     80         SW_SHOWNOACTIVATE = 4; {用最近的大小和位置显示, 不激活}
     81 
     82         SW_SHOW = 5; {同 SW_SHOWNORMAL}
     83 
     84         SW_MINIMIZE = 6; {最小化, 不激活}
     85 
     86         SW_SHOWMINNOACTIVE = 7; {同 SW_MINIMIZE}
     87 
     88         SW_SHOWNA = 8; {同 SW_SHOWNOACTIVATE}
     89 
     90         SW_RESTORE = 9; {同 SW_SHOWNORMAL}
     91 
     92         SW_SHOWDEFAULT = 10; {同 SW_SHOWNORMAL}
     93 
     94         SW_MAX = 10; {同 SW_SHOWNORMAL}
     95         /第一个参数是代表系统弹出
     96         //第二个参数是代表执行
     97         //第三个参数执行命令行
     98         //第四个,第五个默认0,
     99         //第六个参数,0代表窗口隐藏,1代表正常,3最大化,6最小化
    100         */
    101         ShellExecuteA(NULL,"open","D:\Music\mm.mp3",0,0,SW_HIDE);
    102         Sleep(5000);//休眠5秒
    103     }
    104     return 0;
    105 }
  • 相关阅读:
    【源码解析】Flink 是如何处理迟到数据
    Flink assignAscendingTimestamps 生成水印的三个重载方法
    【翻译】生成 Timestamps / Watermarks
    【翻译】The Broadcast State Pattern(广播状态)
    基于Broadcast 状态的Flink Etl Demo
    git 更新fork的远程仓库
    Flink 在IDEA执行时的webui
    配置ssh免密,仍需要密码
    第二章 Kubernetes进阶之使用二进制包部署集群
    Kubernetes之Ingress
  • 原文地址:https://www.cnblogs.com/506941763lcj/p/11420822.html
Copyright © 2011-2022 走看看