如何获取桌面壁纸路径?

hjkto 2009-07-02 01:12:29
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;
上面的代码不能获取,不知哪位试过,可以准确获取桌面壁纸路径的?
...全文
3287 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
DelisPhi 2009-07-07
  • 打赏
  • 举报
回复
直接读注册表就行了,2楼正解
hjkto 2009-07-05
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 tiankun66 的回复:]
汗一个,出丑了,你发的源代码我能运行,也能取出 桌面壁纸的路径的,这跟操作系统有相关吧,楼主什么系统?
[/Quote]


我的系统是赢政6。1完整安装版,没有优化,系统一切正常。
hjkto 2009-07-05
  • 打赏
  • 举报
回复
现在有很多的GHOST系统,我的虽然不是,但和一般的系统也不太一样,是赢政完整安装版的
我想说的是,有没有一种方法,可以在不同的系统版本中,准确动态获取路径,我发的代码,在我的机器上,就不能准确获取
通过注册表,也不能获取。

找了一下规律,如果通过系统的桌面,浏览到壁纸,然后设置为桌面壁纸,哪么2楼的注册表方法,可以找到
如果是通过画图软件把图片设为壁纸,通过注册表找不到。
hjkto 2009-07-05
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 ZuoBaoquan 的回复:]
我写了一个Environment类,用来获取系统环境参数,比如当前的机器名称、用户名、当前应用程序的路径、系统环境变量、逻辑盘符、某些特殊文件夹的位置、本机的IP地址、外网的IP地址、网卡的物理地址(MAC)、Internet连接状态等等。有兴趣的可以看看:

http://www.zuobaoquan.com/2009/04/26/delphi-system-environment-pas/
[/Quote]

去学习一下.
ZuoBaoquan 2009-07-05
  • 打赏
  • 举报
回复
我写了一个Environment类,用来获取系统环境参数,比如当前的机器名称、用户名、当前应用程序的路径、系统环境变量、逻辑盘符、某些特殊文件夹的位置、本机的IP地址、外网的IP地址、网卡的物理地址(MAC)、Internet连接状态等等。有兴趣的可以看看:

http://www.zuobaoquan.com/2009/04/26/delphi-system-environment-pas/
hjkto 2009-07-03
  • 打赏
  • 举报
回复
分已加上,除了2楼的方法,还有其它的吗?
gyk120 2009-07-03
  • 打赏
  • 举报
回复
一般情况下是可以获得的,不能运行可以看看是否和杀毒软件等有关
wudiralfzt2008 2009-07-03
  • 打赏
  • 举报
回复
我试过,楼主的代码是可以获得地址的.
接分
大肚肥肥 2009-07-03
  • 打赏
  • 举报
回复
汗一个,出丑了,你发的源代码我能运行,也能取出 桌面壁纸的路径的,这跟操作系统有相关吧,楼主什么系统?
大肚肥肥 2009-07-03
  • 打赏
  • 举报
回复
给我分吧~
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;
hjkto 2009-07-03
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 kim53622744 的回复:]
HKY_CURRENT_USER\CONTROL PANEL\DESKTOP的键值WALLPAPER储存的就是标准的桌面壁纸路径
[/Quote]

这个方法不是所有的电脑都能准确找到路径的,不知是为什么?
hjkto 2009-07-02
  • 打赏
  • 举报
回复
急着发帖上班,忘记加分了,明天补加100分吧!
kim53622744 2009-07-02
  • 打赏
  • 举报
回复
HKY_CURRENT_USER\CONTROL PANEL\DESKTOP的键值WALLPAPER储存的就是标准的桌面壁纸路径
youcunzai 2009-07-02
  • 打赏
  • 举报
回复
开贴默认是20分;为啥要改0分?

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧