zoukankan      html  css  js  c++  java
  • 一个工具类,让你用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
  • 相关阅读:
    js 数组操作常用方法
    如何成为一名卓越的前端工程师
    js实现日期显示的一些操作
    JavaScript 创建对象的七种方式
    ios微信浏览器音乐自动播放
    Mac下新建.开头的隐藏文件
    JavaScript判断浏览器UA 、 添加收藏 、设置首页 、调用本地邮箱发送邮件
    获取当前页面参数Hash和Search,或者当前Script的参数
    AJAX调用代码实例
    移动端兼容笔记整理
  • 原文地址:https://www.cnblogs.com/rockniu/p/1263134.html
Copyright © 2011-2022 走看看