将HBITMAP对象设置为桌面墙纸

时间:2009-12-17 12:29:26

标签: mfc winapi visual-c++

如何将HBITMAP对象设置为壁纸?我正在使用BitBlt获取桌面的屏幕截图,因此我将屏幕截图作为HBITMAP对象。现在我可以将对象保存到bmp文件,并使用SystemParametersInfo,SPI_SETDESKWALLPAPER将其设置为壁纸。

但我正在检查是否有直接的方法将位图对象设置为壁纸。任何API或什么?

1 个答案:

答案 0 :(得分:1)

它需要是一个实际的文件(想想重启等)

如果您尝试模仿UAC,则不是这样做的方法。如果你想模仿UAC,只需创建一个与屏幕大小相同的窗口并在那里绘制位图(为了模仿实际的安全功能,你应该把这个窗口和你的“UAC对话框”放在一个不允许挂钩的单独桌面上, CreateDesktop()API应该让你入门)