const SPI_GETDESKWALLPAPER = $0073;
var
vBuffer: array[0..255] of Char;
begin SPI_GETACCESSTIMEOUT
SystemParametersInfo(SPI_GETDESKWALLPAPER, 200, @vBuffer, 0);
Memo1.Lines.Text := vBuffer;
end;
上面的代码不能获取,不知哪位试过,可以准确获取桌面壁纸路径的?
var
vBuffer: array[0..255] of Char;
begin SPI_GETACCESSTIMEOUT
SystemParametersInfo(SPI_GETDESKWALLPAPER, 200, @vBuffer, 0);
Memo1.Lines.Text := vBuffer;
end;
上面的代码不能获取,不知哪位试过,可以准确获取桌面壁纸路径的?
解决方案 »
- access做数据库,出现了一个不正常的现象
- 怎么实现把程序做成IDE样。可实现自动添加按钮。
- [菜鸟问题]如何用TcpServer和TcpClient,使Server向Client发送消息
- 程序在打包运行后,有时候窗体出现“子窗体没有菜单”的错误提示是怎么回事?
- 怎么把ValueListEditor里的数据保存成文本文件?
- 我做了个程序,大家谈谈
- 简单问题。
- 我正在南京找工作,哪位朋友能给我介绍几个正在招DELPHI程序员的公司?
- 超级难题困扰我
- DELPHI的控件为什么经常会莫名其妙地丢失?
- 有人记得我吗?
- 這是什么:TPacketArray = array[0..$20000000] of Char;
Thanks~
procedure TForm1.FormCreate(Sender: TObject);
var
s: array[1..200] of char;
const
SPI_GETDESKWALLPAPER = 115;
begin
SystemParametersInfo(SPI_GETDESKWALLPAPER, 200, @s, 0);
showmessage(s);
end;
我想说的是,有没有一种方法,可以在不同的系统版本中,准确动态获取路径,我发的代码,在我的机器上,就不能准确获取
通过注册表,也不能获取。找了一下规律,如果通过系统的桌面,浏览到壁纸,然后设置为桌面壁纸,哪么2楼的注册表方法,可以找到
如果是通过画图软件把图片设为壁纸,通过注册表找不到。