首页 > 解决方案 > 为什么 VBA 引用 FM20.dll 仅通过 Windows 应用程序出现而不通过 Windows 资源管理器出现?

问题描述

在一台新机器上将一些 32 位代码迁移到 64 位,我不得不“软”调整一些代码,以便至少允许编译。为此,我注册了旧的 32 个库(mscomctl.ocx、mscal.ocx)并且还需要添加 FM20.dll。

尽管 VBA 发誓它位于 C:\WINDOWS\system32:

VBA 参考对话

我看不到它,当然启用了隐藏文件: 在此处输入图像描述

但是,如果我浏览添加引用对话框,我可以看到它: 在此处输入图像描述

顺便说一句,我的一个应用程序使用位于的 FM20.dll 副本

\Program Files (x86)\Microsoft Office\root\vfs\SystemX86

并且可以通过Windows资源管理器查看;这是一个不同的版本(00086 与 20386): 在此处输入图像描述

我看到了类似thisthis的较早的问题,但无法理解为什么会这样,以及我们可以预期哪些其他库会出现这种行为。

TIA。

标签: vbawindowsdll

解决方案


推荐阅读