0

我已经为 Outlook 编写了 VSTO 3.0 插件。它位于 ThisAddIn 的常规行上。该插件针对office 2007 或更高版本。我们最近发现它不适用于某些工作站。这是无法加载的摘要。

该插件可在以下设备上正常加载和运行:1) 使用 Office 2007 的所有 32 位工作站(Windows Server 2003 和 Windows 7)2) 使用 Office 2010 的所有 32 位工作站(Windows Server 2003 和 Windows 7)

该插件甚至无法在某些 64 位工作站上加载。我们已经比较了它工作的工作站和不工作的工作站。它们完全相同,包括安装的软件集。事实上,我们花了很多时间确保两者在所有方面都相同。

它们都是运行 Windows server 2003、Office 2007(32 位)的 64 位工作站。到目前为止,我认为 Office 2007 没有 64 位版本。我在事件日志中收到的确切错误是:请注意,我已从这篇文章中删除了 URL(VSTO URL)。

自定义 URI:“VSTO URL”异常:无法加载自定义,因为无法创建应用程序域。 * ** * **异常文本* ** * **Microsoft.VisualStudio.Tools.Applications.Runtime.CannotCreateCustomizationDomainException:无法加载自定义,因为无法创建应用程序域。---> System.IO.FileLoadException:加载此程序集会产生与其他实例不同的授权集。(来自 HRESULT 的异常:0x80131401)在 System.RuntimeType.CreateInstanceSlow(Boolean publicOnly,Boolean fillCache)的 System.RuntimeType.CreateInstanceSlow(Boolean publicOnly,Boolean fillCache)的 System.RuntimeTypeHandle.CreateInstance(RuntimeType 类型,Boolean publicOnly,Boolean noCheck,Boolean& canBeCached,RuntimeMethodHandle& ctor,Boolean& bNeedSecurityCheck)。 CreateInstanceImpl(Boolean publicOnly, Boolean skipVisibilityChecks, Boolean fillCache) 在 System.Activator.CreateInstance(Type type, Boolean nonPublic) 在 System.RuntimeType。

** * **加载的程序集** * **** mscorlib 程序集版本:2.0.0.0 Win32 版本:2.0.50727.5737 (QFE.050727-5700) 代码库:file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib .dll ---------------------------------------- Microsoft.VisualStudio.Tools.Office。 Runtime.v10.0 程序集版本:10.0.0.0 Win32 版本:10.0.21022.1

代码库:file:///C:/WINDOWS/assembly/GAC_MSIL/Microsoft.VisualStudio.Tools.Office.Runtime.v10.0/10.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualStudio.Tools.Office.Runtime.v10.0.dll

我发现如果首先加载基于类似行的另一个插件,我的插件将无法加载。这个插件,比如说, Adddin1 如果加载会使我的插件处于非活动状态。Addin1 的构建类似于我的 addin-相同的目标环境。如果我禁用 Addin1 我的插件加载正常。由于各种原因,我无权更改 Addin1 上的任何内容。
我可以对我的插件进行哪些更改以独立于任何其他插件加载?
我可以选择加载插件的顺序吗?
对 vstoee.dll 有依赖吗?

任何建议都会有所帮助。谢谢你。

4

1 回答 1

0

购买了一个安装了所有新软件而不是应用映像的新工作站。这解决了这个问题。

于 2013-07-03T07:00:26.003 回答