我一直在尝试为C# Outlook2003外接程序创建展开。它只需要NET2.0并依赖于(Extensibility.dll的) IDTExtensibility2。确保安装了Office2003PIA后,由于Could not load file or assembly 'Extensibility, Version=7.0.3300.0, Culture=nuetral, PublicKeyToken=b03f57f11d50a3a' or one of its dependencies. Strong name validation failed. (Exception from HRESULT: 0x8013141A)的原因,外接程序仍无法注册
我不认为部署Extensiblity.dll是合法的,即使它是合法的,我也不能让它工作。那么,如何确保它在目标PC上可用呢?
我在任何地方都找不到合适的解决方案。
该解决方案是在VS2010中开发的。
发布于 2012-08-15 16:17:01
如果您的outlook外接程序是使用强名称密钥签名的,则引用的任何外部库也需要进行强名称签名。
我以前遇到过和你的类似的问题,第三方库没有用强名称签名。
发布于 2012-08-15 20:49:02
在做了一些搜索之后,我发现了this Microsoft Support article,它提供了一个解决方案。
简而言之:
当您使用Microsoft Visual Studio2005创建外接程序、智能文档或智能标记时,您可能会遇到以下症状:
无法在任何Microsoft Office application.
以及他们的解决方案:
为了解决Visual Studio2005开发人员的这个问题,我们提供了Visual Studio2005更新的可再发行版本。
发布于 2016-07-28 04:10:37
在以下位置找到Extensibility.dll
\Visual Studio Tools for Office\PIA\Common
文件夹。已将其复制到项目文件夹。
我有VSTO 2010。添加了对我的项目的引用,编译错误消失了。错误的相同版本: 7.0.3300.0。VSTO是微软为开发人员免费分发的,用于为Microsoft Office创建解决方案,但VSTO 2010附带的许可证文档不允许您复制它,除非您自己使用。这就是说,我会纠缠微软关于dll的问题,因为很明显你的项目需要它。显然,他们应该在许可证中添加一个条款,以允许开发人员分发dll。
https://stackoverflow.com/questions/11956881
复制相似问题