C#替换桌面的两种方式

关于C#替换桌面。我一直在网上找。有两种方式。一种是修改注册表 一种是调用系统API:


修改注册表

     using Microsoft.Win32;  //写入注册表时要用到       
//设置壁纸
            //导航到Policies项
            RegistryKey hkml = Registry.CurrentUser;
            RegistryKey software = hkml.OpenSubKey( @"Software\Microsoft\Windows\CurrentVersion\Policies\" , true );

            //新建立System项
            RegistryKey aimdir = software.CreateSubKey( "System" );
            aimdir.SetValue( "Wallpaper" , photoURL );//URL是图片的URL
            reKey.SetValue( "TileWallpaper" , "0" );
            aimdir.SetValue( "WallpaperStyle" , "2" );


            //关闭节点,并保存修改
            hkml.Close();
            software.Close();
            aimdir.Close(); 

调用系统API

using System.Runtime.InteropServices;  //调用WINDOWS API函数时要用到

        [DllImport("user32.dll", EntryPoint = "SystemParametersInfo")]
        public static extern int SystemParametersInfo(
            int uAction ,
            int uParam ,
            string lpvParam ,
            int fuWinIni
            );
SystemParametersInfo( 20 , 1 , photoURL , 1 );

你可能感兴趣的:(C#,.net)