我已经为2003,2007和2010创建了一个Outlook加载项.这个加载项在2007年和2010年运行良好,但在2003年没有在我自己的开发机器之外的任何机器上正确加载.没有代码问题,因为加载行为中没有显示错误,并且它不是禁用的项目.加载项也未显示在COM加载项列表中.这个加载项在2003年之前已经有效.
这是奇怪的部分.我有一个早期时间点的加载项副本,因此不包含完整版本的某些功能.这个加载项在2003年正确加载.因此,作为我的测试的一部分,在VM上,我安装了早期版本(我称之为测试)和当前版本不起作用(我将其称为完整版) .在HKCU>软件>类> CLSID> [[guid]]> InprocServer32下的注册表中,对于测试版本,我将"Manifest Location"和"Manifest Name"键更改为完整版的值.然后我运行Outlook,完整版完美运行.
我无法看到完整的加载项在它自己的注册表设置下是如何工作的,但在测试版下工作正常,并且仅在Outlook 2003上工作.
这是基本信息:
我的开发设置是:
安装项目中包含以下预先要求:
任何提示都会非常感激,因为我已经花了将近4天的时间来解决这个问题!
TIA.
更新1:
根据@JoaoAngelo评论我检查了注册表设置,它们如下:
HKCU>软件>类> CLSID> {加载项CLSID}> InprocServer32
- (default) - '%CommonProgramFiles%\Microsoft Shared\VSTO\8.0\AddinLoader.dll'
- ManifestLocation - path to the containing folder
- ManifestName - the .dll.manifest file name
- ThreadingModel - 'Both'
Run Code Online (Sandbox Code Playgroud)
HKCU>软件>微软> Office> Outlook> Addins> MyAddin …