我有旧的VB6插件(Visio)源代码,在编译时会生成DLL。我需要将此dll分发给最终用户,但是当我在用户PC上以管理员身份运行以下命令时:
regsvr32 MyAddin.dll
它抛出:
The Module "MyAddin.dll" was loaded but the call to DllRegisterServer failed with error code 0x80004005.
为调试此问题,我创建了一个新的VB6外接程序项目,在Connect.Dsr中将“应用程序”更改为“ microsoft Visio”。并尝试将此dll安装到具有Visio的新Windows 10 VM。仍然出现相同的错误。
由于该dll在我的PC上可以运行,并且我的PC与VM /用户PC之间的唯一显着差异是VB6 Enterprise IDE,因此我在VM上安装了“ Visual Basic 6 Enterprise”,之后便可以在其中注册dll也一样显然,我不能要求最终用户安装Visual Basic 6 Enterprise,如何知道“ Addin”项目模板的依赖关系?还是应该在安装程序中捆绑VB 6 Enterprise的最低限度文件?