【发布时间】:2010-12-15 23:25:53
【问题描述】:
我有一个用户在使用我的软件时开始遇到与他的 shell32.dll 文件相关的访问冲突。在升级到我们软件的最新版本后开始出现这种情况,这是我们在 D2009 中编译的第一个版本。
没有其他人报告这些 AV 问题,我自己也无法复制这些问题。因此,这似乎与他特定的 Windows 安装有关。我使用 EurekaLog,所以我可以看出其中一些 AV 与应用程序中各种表单的创建或显示有关。通常,以下引用作为调用堆栈的最后一件事给出:
shell32.dll > ILIsEqual
有人对我如何让该用户再次使用有任何想法吗?或者我如何才能获得更多关于实际问题的线索?过去,我发现这些只发生在一个用户的机器上的错误很难追踪....
【问题讨论】:
-
调用堆栈上的最后一件事可能不如调用堆栈上来自您的代码的最后一件事重要。你的代码在做什么,它调用了什么函数最终调用了 shell32?
-
客户端使用 XP Pro SP3。问题是我的代码中的最后一件事并不总是相同的。并且错误不是来自任何可重复的操作(例如单击按钮等)。另外,它总是来自简单的事情,比如显示表单。我开始认为他的操作系统安装可能有问题?
-
我不认为操作系统安装搞砸了。
ILIsEqual可以代表ImageListIsEqual,在这种情况下,图形卡、图形卡驱动程序、已安装的外壳扩展程序和程序中图像列表格式的组合很可能存在问题。尝试从您的应用程序中删除艺术作品,或将其替换为黑白或 16 色版本,或让客户尝试不同的屏幕分辨率、颜色深度或更新的卡驱动程序版本。 -
问题也应该标记为“shell”
标签: delphi delphi-2009