您的位置:首页 > 编程语言

[CF.Skills]在Pocket PC上编程设置壁纸

2008-02-28 01:43 218 查看
写下这篇帖子是来源于kevens的问题,如何编程设置壁纸?

我查看了msdn的一篇文章,提到了注册表中主题的位置,而且你也的确可以在你的设备上找到他.

class Wallpaper

{

/**//// <summary>

/// 用来说明是post还是send

/// </summary>

private const int HWND_BROADCAST = 0xffff;

/**//// <summary>

/// 消息类型,详见winuser.h

/// </summary>

private const uint WM_WININICHANGE = 0x001A;

public static void ChangeWallPaper(String fileFullName)

{

//将图片Copy到Windows目录下

//横屏

File.Copy(fileFullName, @"\Windows\stwater_320_240.jpg", true);

//竖屏

File.Copy(fileFullName, @"\Windows\stwater_240_320.jpg", true);

// 发送消息改变today screen

SendMessage((IntPtr)HWND_BROADCAST,

WM_WININICHANGE,

0xF2,

0);

}

[DllImport("coredll.dll")]

private static extern int SendMessage(IntPtr hWnd, uint msg, int wParam, int lParam);

}
用的时候只需将文件名传入,注意这里的stwaterXXX是属于OS的metabase,不要改动它。更多的metabase的内容请参考这里

demo程序如下:



Option-->Browse-->选择你的图片

设置效果如下:



完整的代码点此处下载

enjoy it !

---

黄季冬<fox23>@HUST

2008-2-28
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: