gpt4 book ai didi

c# - 动态添加引用到我的项目

转载 作者:行者123 更新时间:2023-11-30 12:34:22 24 4
gpt4 key购买 nike

我正在为 Microsoft Word 开发插件。在我的加载项中,我使用了对文件“Microsoft.Office.Interop.Word.dll”的引用,因此我可以使用 word 对象。

如果开发机器安装了 word 2007,则要包含在引用中的文件是版本 12如果安装了 word 2010,则该文件应为版本 14。

无论计算机上安装了哪个版本的 Word,我如何构建我的插件并使其正常工作(换句话说,告诉我的应用程序自动检测安装的 office 版本并自动使用适当的互操作文件)?

最佳答案

如果您的实际代码正在引用给定程序集中的项目,则尝试挂接到不同版本实际上可能会导致错误(例如,如果某些方法签名已更改)。在大多数情况下,最好的策略是针对不同的 DLL 版本生成不同的版本,并在用户的计算机上安装正确的版本。

您可以使用一些策略使这更容易,例如将您对该库的调用包装在一组接口(interface)中,然后有两个主要的“插件”程序集,它们为接口(interface)提供实现,但当它们使用不同的 DLL 时,它们针对不同的 DLL实现它们。该软件可以通过配置动态加载实现绑定(bind),类似于流行的依赖注入(inject)框架的方式。这样,如果方法签名从一个版本更改为另一个版本,您只需更改一个类,其余代码仍将按原样工作。

关于c# - 动态添加引用到我的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7284347/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com