首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >C#:关于windows中的主题和壁纸,如何保持slideshow.ini不变?

C#:关于windows中的主题和壁纸,如何保持slideshow.ini不变?
EN

Stack Overflow用户
提问于 2013-05-03 02:18:39
回答 1查看 651关注 0票数 1

出于某种原因,我正在使用SystemParametersInfo在C#中重新设置壁纸。但是每次我做完这件事,C:\Users\CurrentUser\AppData\Roaming\Microsoft\Windows\Themes中的slideshow.ini也会被重置为空。我需要它是相同的文件,然后我设置新的壁纸到桌面。

是否有任何API或任何方法可以完成这项工作?

是否有任何API可以获得关于用户更改主题的信息->单个壁纸(新主题)?

我试过WM_THEMESCHANGE & WM_PAINT,它们都不能满足我的需要。

只需改变壁纸,但不重置slidershow.ini,它的作用就像“主题”,一段时间后改变照片,并保留slideshow.ini。谢谢你的帮忙!

EN

回答 1

Stack Overflow用户

发布于 2013-06-07 22:21:48

在您的项目中添加一个计时器,并将其集成到默认的墙纸更改代码中,并将其用于常规的墙纸更改。通过将readonly属性设置为ini文件的true,可以保护它不受任何更改的影响。

代码语言:javascript
运行
复制
        using System.IO;

        string iniPath = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + @"\Microsoft\Windows\Themes\slideshow.ini";
        File.SetAttributes(iniPath, File.GetAttributes(iniPath) & FileAttributes.ReadOnly);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16350603

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档