我遇到一个问题,即外接程序的ProgID
是MyAddin,而我希望它是MyAddin.Connect,因为VBA引用了MyAddin.Connect,因此已有很多电子表格。
我已经将csproj文件,清单和vsto文件中的MyAddin的每个实例更改为MyAddin.Connect。我已经更改了注册表中的每个实例。
甚至注册表项
HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Office \ Excel \ Addins \ MyAddIn
到MyAddIn.Connect
仍然,当我通过VBA检查ProgID
时,它仍然显示MyAddin(COM加载项管理器中的友好名称是MyAddin.Connect)。
从Excel中的VBA中准确加载ProgID
的位置在哪里?我应该注意到,当我通过Visual Studio调试AddIn时,它运行良好。但是,当我通过InstallShield安装程序安装它时,它只是拒绝工作。
最佳答案
当我们通过Visual Studio调试AddIn时,AddIn的条目将添加到注册表中,并从那里加载该Addin。
从InstallShield安装AddIn时,我们需要检查是否为AddIn正确添加了注册表项。
还要检查HKCU
分支下的同一注册表项。因为加载项是从HKCU分支以及注册表中加载的。