荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: Deny (Deny), 信区: Visual
标  题: [转载] 刷新桌面使程序设定壁纸生效             masedin (转寄)
发信站: BBS 荔园晨风站 (Sat Dec 23 22:12:21 2000), 转信

【 以下文字转载自 Deny 的信箱 】
【 原文由 denick.bbs@smth.org 所发表 】
发信人: yumingzeng (Jade), 信区: VisualC
标  题: Re: 问一个关于桌面的问题,急!?
发信站: BBS 水木清华站 (Sat Sep 16 20:26:28 2000)

调试了好一会儿,终于成功。
你可以使用COM来实现,以下代码可以运行并起作用:
不要试图修改注册表。
 HRESULT hr;
 IActiveDesktop *pActiveDesktop;
 //Create an instance of the Active Desktop
 hr = CoCreateInstance(CLSID_ActiveDesktop, NULL, CLSCTX_INPROC_SERVER,
    IID_IActiveDesktop, (void**)&pActiveDesktop);
 //Insert code to call the IActiveDesktop methods
 if (SUCCEEDED(hr))
 {
  USES_CONVERSION;
  if (FAILED(pActiveDesktop->SetWallpaper(T2W(_T("e:\\zeng\\0039.jpg")), 0)))
  {
   MessageBox("Failed !");
  }
  pActiveDesktop->ApplyChanges(AD_APPLY_ALL);
  // Call the Release method
  pActiveDesktop->Release();
 }


【 在 hazy (GiveMePerception) 的大作中提到: 】
: 我的程序修改了注册表里的桌面壁纸,请问调用哪个函数可以刷新当前的桌面,使我程序
: 设定的壁纸生效?多谢了!!!!!


--

※ 来源:·BBS 水木清华站 smth.org·[FROM: 202.120.1.180]
--
※ 转载:·BBS 荔园晨风站 bbs.szu.edu.cn·[FROM: 192.168.1.119]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店