把Winform程序窗口嵌入到桌面

本文是原创文章。转载请标明出处:http://www.cnblogs.com/liuguanglong/

 

 

有些应用程序要求窗口嵌入在桌面上,这样Win+D键的时候就可以看到,非常的方便。

就像Win7下的桌面小控件一样。

 

实现的原理是这样的。桌面本身是一个OS提供的窗口,只要将窗口的父窗口设置成桌面

窗口就可以了。桌面窗口在Xp下通过FindWindow("Program manager","progman")可以找到,

但是在win7和Vista下这个方法无效。

在Windows7和Vista下桌面对应的窗口标题和窗口类分别是FolderView

SysListView32。

 

前一阵写了段小程序,在xp和win7下都可以使用,Vista没试,应该没问题。

C#语言和WinForm。

 

实现原理下面再写,先写下调用方法。只要简单的调用一个静态方法就行了。

image

 

下面就是DeskTopUtil静态类的部分实现代码,省去了P/Invoke函数调用的一些常量的定义。

image

 

因为我还不会贴代码,所以就贴了图片,大家需要代码的话,请在留言中留下mail。

 

本文是原创文章。转载请标明出处:http://www.cnblogs.com/liuguanglong/

posted @ 2011-01-10 13:34  软件猎人  阅读(2659)  评论(3编辑  收藏  举报