【发布时间】:2011-08-08 12:02:47
【问题描述】:
我有一个基于 SWT 的小型 Java 应用程序。安装时 swt-win32-*.dll 与我的应用程序一起安装在 C:\Program Files\myapp\win32 中。
当我在进程资源管理器中查看我的应用程序时,我注意到 dll 是从以下位置加载的:
C:\Users\[Username]\AppData\Local\Temp\swtlib-32\swt-win32-*.dll
在 Windows XP 上,它最终会出现在:
C:\Documents and Settings\[Username]\Local Settings\Temp\swt-win32-*.dll
每当我从临时文件夹中删除它并重新启动我的应用程序时,DLL 都会再次复制到那里。我的应用程序所依赖的其他 dll 不显示此行为。
谁复制 dll(我的应用程序没有)? 背后的原因是什么?
【问题讨论】:
-
这是应用程序用来绕过 UAC 的一种技巧。 Chrome 也使用它。他们可以静默更新 DLL。病毒也一样。