C#教程

关注公众号 jb51net

关闭
首页 > 软件编程 > C#教程 > c#获取windows桌面背景

c#获取windows桌面背景代码示例

作者:

这篇文章主要介绍了c#获取windows桌面背景的方法,大家参考使用吧

复制代码 代码如下:

#region 获取windows桌面背景
        [System.Runtime.InteropServices.DllImport("user32.dll", CharSet = System.Runtime.InteropServices.CharSet.Auto, SetLastError = true)]
        public static extern int SystemParametersInfo(int uAction, int uParam, StringBuilder lpvParam, int fuWinIni);

        private const int SPI_GETDESKWALLPAPER = 0x0073;
        #endregion


void WindowsBtn_Click(object sender, RoutedEventArgs e)
        {
            //定义存储缓冲区大小
            StringBuilder s = new StringBuilder(300);
            //获取Window 桌面背景图片地址,使用缓冲区
            SystemParametersInfo(SPI_GETDESKWALLPAPER, 300, s, 0);
            //缓冲区中字符进行转换
            string wallpaper_path = s.ToString(); //系统桌面背景图片路径
         }

调用windows api获取

使用的时候需要注意StringBuilder的大小不能小于255,因为windows的路径最大支持255,如果定义过小...

如果当前系统桌面无背景或为纯色则返回空.

您可能感兴趣的文章:
阅读全文