问题标签 [desktop.ini]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
836 浏览

shell - 用于修改 desktop.ini 文件的 Shell 脚本

我有很多带有自定义图标的文件夹。所有文件夹都存在于同一目录中。
例如。D:\Folder 是包含folder1,folder2,.....等的目录。
每个文件夹都包含各自的图标和desktop.ini文件

当前desktop.ini文件内容如下:

我想从每个文件夹的 desktop.ini 文件中删除NoSharing=1 。

删除后,ini 文件应如下所示:

ini 文件是隐藏的,具有以下属性:系统、隐藏和存档。
感谢您提供的任何帮助。

0 投票
1 回答
595 浏览

windows - Win 10:Desktop.ini 信息提示/工具提示文本格式 - 换行符

我正在尝试使用Desktop.ini文本文件自定义 Windows 10 操作系统中的一些文件夹。我无法解决的一件事是如何在信息提示中换行。

当前文本文件如下所示:

所以文本文档的最后一行没有按预期工作。它只是无法识别 \n 符号。我还尝试用 unicode 字符和其他一些类似的方法和符号替换标准的 \n 换行符,但它没有用。无论那里写什么,它都会将其识别为字符串。

我可以实现换行的唯一方法是添加这么多字符,Win 10 会自动开始一个新行。

非常感谢您的帮助。谢谢!

0 投票
1 回答
379 浏览

c++ - 使用批处理文件对 desktop.ini 进行了更改,但文件夹图标不会更改

我使用批处理文件通过将现有文件替换为新文件来更改 desktop.ini 文件。这部分的代码是:

它成功地替换了文件(我使用了 attrib +s 和 +h),但文件夹的图标没有改变。如何让 Windows Explorer 识别更改?我之前听说过一些关于 SHChangeNotify 的事情。

0 投票
0 回答
486 浏览

python - 尝试在 desktop.ini 文件上写入时如何修复 Python 中的 PermissionError?

在使用此 python 脚本更改文件夹图标后,我正在尝试更改 desktop.ini 文件上的图标资源,但我得到了这个:

发生异常:PermissionError [Errno 13] 权限被拒绝:'desktop.ini'

我试过以管理员身份运行,禁用 UAC,并更改文件的安全权限,但没有答案。

发生异常:PermissionError [Errno 13] 权限被拒绝:'desktop.ini'

0 投票
1 回答
519 浏览

c# - 应用文件夹图标更改

我正在尝试更改文件夹的图标。下面的代码完成了我在网上找到的所有内容,但图标永远不会改变。我可能没有“应用”更改吗?

0 投票
0 回答
40 浏览

explorer - 通过 desktop.ini 更改网络驱动器中的资源管理器列

我在网络驱动器中有一个目录,主要存储 MS-Office 文档。每当有人在他的资源管理器中打开此文件夹时,我想更改 desktop.ini 以默认显示标题列。

在另一个目录中,我有一堆带有附加注释的文件夹,以指导用户了解结构/解释每个文件夹的正确用途等...默认情况下,注释列被禁用,因此我还需要一种方法来启用此列默认。

有谁知道如何做到这一点?

0 投票
0 回答
155 浏览

git - 'desktop.ini' 阻止 git 垃圾收集器重新打包

我认为将您的 git 存储库安装在 Windows 系统上的 Google Drive 上并不是一个好习惯,因为臭名昭著的desktop.ini文件会随处弹出(这是 2015 年的帖子)。

当团队成员尝试运行垃圾收集器(有或没有修剪:它没有任何区别)时,结果如下:

混帐 gc

有谁知道如何防止git将文件解释desktop.ini为其配置和参考文件的一部分?

  • 注意:请不要回答更改注册表项、安装此应用程序/补丁或在 Windows 设置中禁用此功能等问题。我们假设我们无法摆脱该desktop.ini文件。我们只是想让事情即使在它存在的情况下也能正常工作(如果可能的话)。
0 投票
1 回答
375 浏览

filesystems - 在 Windows 文件管理器中自动显示属性列

我正在尝试在“详细信息”视图中自动显示 Windows 文件管理器中的“属性”列。此列应仅针对特定文件夹显示(而不是针对系统中的所有文件夹)。据我所知,这可以通过 desktop.ini 文件进行。

我已将desktop.ini 文件放在文件夹中,将其标记为系统、隐藏和只读。我还尝试将 desktop.ini 所在的文件夹标记为系统和只读。

我的 desktop.ini 部分工作,至少我能够更改文件夹图标。我想我错误地描述了 Attributes 列。这是我的 desktop.ini 文件:

这是我试图自动化的属性列: 如何在 Windows 文件管理器中自动显示属性列

0 投票
0 回答
90 浏览

windows - 有没有办法在 desktop.ini 文件中使用 IconResource 路径中的文件夹名称?

我正在使用包含此内容的desktop.ini文件来设置文件夹的自定义图标

所以我把这个文件放在每个文件夹中。

有没有办法使用文件所在文件夹的名称代替图标文件的名称?

即,有没有办法放置类似的东西

IconResource=..\Icons\*FolderName*.ico,0

0 投票
0 回答
603 浏览

c++ - 使用 desktop.ini 更新文件夹图标并立即更改(C++)

在阅读了很多内容并连续尝试了 2 天之后,我设法按照 Microsoft 关于文件夹图标的教程完成了一些工作,但这并不完美 - 更改不会立即发生。我需要重新启动资源管理器/重新启动计算机或等待几分钟(随机),直到我看到旧图标变为新图标。

TL;博士

预期结果:我想以编程方式更新我的文件夹图标,并看到新图标立即出现,无需等待。(使用c++,.batnode.js任何其他可行的方法,我真的不介意)。

问题:链接我的.ico文件后,我希望立即看到结果,但我只能在 30 秒到 4 分钟左右后看到它。它有时也会立即发生变化,但很少发生,我希望它 100% 的时间都能正常工作。

要求和注意事项:

  • 不能重新启动资源管理器。
  • 如果它不会从所有文件夹和文件中清除整个缩略图缓存会更好,因为它只需要更新单个文件夹图标。

希望/失败的尝试

以编程方式重命名desktop.ini(不幸的是不工作)

我找到了一种立即查看图标更改的方法,但它仅在通过资源管理器本身手动重命名 desktop.ini 时才有效。(将 desktop.ini 更改为大写/小写或 desktop-temp.ini,然后返回 desktop.ini)这样做时,我看到文件夹图标立即更改。

这使我希望我可以以编程方式执行相同的操作,因此我尝试了此 C++ 代码,该代码更改desktop.inidesktop-temp.ini并返回desktop.ini,还通知窗口发生了更改,但不幸的是它没有工作。

SHChangeNotify()(有效,但不是立即)

灵感来源:如何在 Windows 中即时刷新文件夹图标

我尝试运行这个 C++ 代码(在使用 npm 命令编译之后g++ -o refresh-folder-icons refresh-folder-icons.cpp)并且它成功了!但我的变化发生在 1 到 5 分钟之间,如果你幸运的话,你会立即看到它。这是不可靠的。我在两台计算机(均为 Windows 10)上对此进行了测试。

使用 VBScript “使用 shell 函数通知所有正在运行的资源管理器窗口使用更新的 desktop.ini”(对我不起作用)

我也尝试过创建一个.bat文件,然后是:更改 desktop.ini 不会在 Windows 中自动更新文件夹图标,但我的文件夹仍然显示以前的图标。

使用 IE4UINIT 刷新图标

按照此

运行以下命令(对于 Windows 10)并按 Enter:ie4uinit.exe -show 对于 Windows 8 及更早版本,请改为运行此命令:ie4uinit.exe -ClearIconCache

使用NirCmd刷新图标

按照本教程(第 3 步),我尝试安装NirCmd并运行所有三个,它们都没有刷新我的文件夹图标:

SHGetSetFolderCustomSettings()(我的主要希望!!!)

有人在这里写道SHGetSetFolderCustomSettings功能设置一个图标并自行发送所有必要的通知”,这真的让我希望这是正确的道路。

此外,在 Peter Tseng 的回答herehere中,他展示了一个有效的示例代码,但是当我尝试将此 C++ 代码编译成.exe时,我得到了错误。这是代码:

但我得到三个错误,都表明同一个问题:

  • 'SHFOLDERCUSTOMSETTINGS'未在此范围内声明 (gcc)
  • 'pfcs'未在此范围内声明 (gcc)
  • 'SHGetSetFolderCustomSettings'未在此范围内声明 (gcc)

为什么我会收到此错误?我缺少依赖项吗?我正在使用 Windows 10。