• 一个工具类,让你用C#换桌面墙纸


    参考了这篇文章:

    http://blog.csdn.net/sonyicn/archive/2006/05/20/746280.aspx

    现实代码如下:

    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Runtime.InteropServices;
    using Microsoft.Win32;
    using System.IO;

    namespace RockLib
    {
        
    public class Utils
        
    {
            
    /// <summary>
            
    /// Change user's desktop wallpaper
            
    /// </summary>
            
    /// <param name="picturePath"></param>
            
    /// <param name="style"></param>
            
    /// <returns></returns>

            public static bool ChangeWallPaper(string picturePath, WallPaperStyle style)
            
    {
                RegistryKey myRegKey 
    = Registry.CurrentUser.OpenSubKey("Control Panel\\desktop"true);
                
    switch (style)
                
    {
                    
    case WallPaperStyle.Center:
                        myRegKey.SetValue(
    "TileWallpaper""0");
                        myRegKey.SetValue(
    "WallpaperStyle""0");
                        
    break;
                    
    case WallPaperStyle.Tile:
                        myRegKey.SetValue(
    "TileWallpaper""1");
                        myRegKey.SetValue(
    "WallpaperStyle""0");
                        
    break;
                    
    case WallPaperStyle.Stretch:
                        myRegKey.SetValue(
    "TileWallpaper""0");
                        myRegKey.SetValue(
    "WallpaperStyle""2");
                        
    break;
                    
    default:
                        
    throw new NotSupportedException("style");                    
                }


              
                myRegKey.Close();

                
    int intResult;
                
                
    if (!File.Exists(picturePath))
                
    {
                    
    throw new ArgumentException(string.Format("Picture {0} cannot be found.", picturePath));
                }


                intResult 
    = SystemParametersInfo(203, picturePath, 0x1 | 0x2);

                
    return intResult > 0;

            }


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


        
    public enum WallPaperStyle
        
    {
            Center,
            Tile,
            Stretch
        }

    }

    测试代码:

    Code
  • 相关阅读:
    java学习大方向
    js总结001
    MySQL总结
    快捷键
    java基础总结001
    网络设备的发展与作用(冲突域与广播域)
    二进制&八进制&十六进制之间的快速转换------ 心算&笔算方法总结
    IP地址的定义和划分
    初学Linux基本的命令操作应当记牢
    JDK的下载与安装
  • 原文地址:https://www.cnblogs.com/rockniu/p/1263134.html
Copyright © 2020-2023  润新知