我已经看到大量解决此问题的帖子和网站。我已经尝试过找到的每个解决方案,但是都无法解决(我已经尝试了好几天了)。我看到许多帖子都出现了完全相同的发音问题,但是该解决方案对我而言不起作用或不适用。照这样说...
我有一个Outlook 2007加载项,旨在将文本添加到电子邮件的标题和正文中。使用.msi文件的所有用户都可以安装该文件。我去年部署了一个较旧的版本,效果很好。我创建的新版本只有很少的输入/输出更改,没有大的更改。从Visual Studio调试和实际安装中,此新版本均可在我的开发计算机上完美运行。但是,我无法在非开发计算机上使用它。以下是有关程序和目标计算机的详细信息(开发计算机和目标计算机的详细信息相同,但目标计算机没有Visual Studio的事实除外):
-Using Visual Studio Professional 2013
-Written in Visual Basic
-Target Framework is .NET 4.0
-The add-in is only run once the "send" button on an email is clicked.
-Outlook version is Outlook 2007
-Operating system is Windows 7 Enterprise SP1 32-bit
问题在于该加载项不会在目标计算机上加载(是的,我知道,有成千上万的其他人也遇到过同样的问题)。就像我之前说过的,它在我的计算机上的调试版本和已安装版本中都可以正常工作。这使我认为另一台计算机缺少某些内容,因此我尝试将.NET 4.0框架安装到目标计算机上,但它告诉我已经安装了。我经历了我想过的所有事情,以使其无济于事。它的行为如下:
-Installs fine with no errors.
-HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Office/Outlook/Addins/EmailMarkTool/LoadBehavior = 3 after installation.
-VSTO_LOGALERTS = 1
-VSTO_SUPPRESSDISPLAYALERTS = 0
-Outlook opens with no apparent errors.
-LoadBehavior = 0 immediately after Outlook is opened.
-Shows up in the Add-ins under "Inactive Application Add-ins."
-Never shows up under "Disabled Add-ins."
-In the "COM Add-Ins" dialog where I can check which add-ins to use, it shows the correct directory and the Load Behavior is "Unloaded."
-The add-in can be checked. When I click "OK" I don't get any errors. When I go back to the Add-ins, it is unchecked and "Unloaded" again.
-Setting the LoadBehavior to 3 doesn't help because it goes back to 0 as soon as Outlook is started again.
-I inserted a try-catch block into the New() function of the add-in that has a MsgBox pop-up and a Throw.
-I get absolutely no errors anywhere.
-No log file is generated.
我已尝试多次卸载,重建和重新安装,但结果均相同。我只是不知道为什么它可以在我的开发计算机上运行而不能在目标计算机上运行。感谢您阅读所有这些内容。我知道很多,但是我需要弄清楚细节。预先感谢您的任何投入!
[更新]:我刚刚创建了一个全新的最小加载项,只是为了测试它是否可以工作,但得到的结果是相同的。
我发现了问题!
该问题可能是Outlook 2007特有的。事实证明,Microsoft Office 2007 SP1和SP2有一个错误,阻止它运行VSTO加载项。Microsoft发布了可解决此问题的修补程序(https://support.microsoft.com/zh-cn/kb/976477)。这已添加到Microsoft Office SP3的发行版中。但是,要激活此修复程序,必须创建一个新的注册表标志,但该标志不会自动通过该修复程序完成,因此使该修复程序无用,直到您手动激活它为止(说明并在此处下载)。所以...
要在Outlook 2007中启用VSTO加载项,您必须向该注册表添加一个子项:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\12.0\Common\General\
并添加一个DWORD“ EnableLocalMachineVSTO”,其值设置为1。
我这样做了,很好地重启了计算机,第23次安装了我的插件,它可以完美地安装并运行!不过,我不确定以前的版本是如何工作的。我们的系统管理员可能会删除该子项,以在某个时候增强安全性。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句