gpt4 book ai didi

windows - TFileListBox 组件查找不再存在的文件

转载 作者:可可西里 更新时间:2023-11-01 09:49:06 25 4
gpt4 key购买 nike

我在 Windows 7 上使用 Delphi 7,并且有一个应用程序使用 TFileListBox 组件循环访问目录中的文件并将它们复制到备份目录。

我遇到了一些奇怪的行为,即 TFileListBox 正在检测目录中不存在的文件?我处理的目录包含 75 个文件,但 TFileListBox 检测到超过 100 个文件。

我更改了资源管理器设置以显示隐藏/系统文件,但仍然看不到这些额外文件的来源。

我想知道这个 Windows 7 以前的版本是否在这个问题中发挥了作用,因为我相当确定 TFileListBox 正在检测的额外文件确实曾经驻留在这个目录中但被删除了...

如有任何帮助,我们将不胜感激。

最佳答案

我们从上面的评论中得出问题与您的应用程序虚拟化时使用的虚拟商店有关。虚拟商店是在 Windows Vista 中引入的,作为在没有管理员权限的情况下运行应用程序的一部分。这些文件出现在虚拟存储中,因为您的应用程序正在写入程序文件目录,标准用户没有写入权限。

引入虚拟化是为了帮助处理遗留应用程序,这些应用程序不会重新编译以考虑新的 Vista 策略。如今,您根本不应该构建虚拟化应用程序。

您可以通过将应用程序 list 链接到包含 <requestedExecutionLevel level="asInvoker"/> 的应用程序来禁用虚拟化。部分。

当您这样做时,您无疑会发现一些其他问题,因为您的应用程序可能会尝试写入程序文件目录、注册表的 HKLM 部分等。虽然进行这些更改可能看起来很痛苦,但它们确实值得付出努力。

关于windows - TFileListBox 组件查找不再存在的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6745622/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com