Bug*_*get 5 c# dll add-in ms-office
我有一个我创建的图书馆项目,到目前为止已经在三个项目中使用过。一个WPF项目,一个Windows Forms项目和一个Web应用程序项目。dll将App.Config文件用于办公室常用的各种密钥,例如网络存储驱动器的路径。因此,现在要求我分别为MS Office 2010 Excel和Access创建一个插件。
现在,我以前遇到过这样的情况,库项目将使用配置文件作为其调用项目,因此我不得不将密钥添加到该项目的配置文件中,因此我想我将对该项目执行相同的操作。我开始摆弄它,以了解如何使Office应用程序调用dll方法,并立即看到它没有从App.Config文件中找到任何内容。
环顾四周后,我发现Office加载项项目实际上只是一个实现IDTExtensibility2接口并将其自身注册为COM dll的项目。所以现在我遇到的情况是,我有一个具有从属dll的dll,并且它们都不在配置文件中找到任何内容。那么在这种情况下我将配置文件放在哪里?我尝试将其与Excel.exe一起放在Office 14文件夹中,以及与使用加载项但无济于事的Excel工作表放在同一文件夹中。任何想法都将不胜感激。谢谢!
好吧,只是回答这个问题,因为我最终通过反复试验找到了它。如果您尝试将配置文件用于引用 dll 项目的 Office 加载项项目,则使用的配置文件仍将是调用 exe 的配置文件。也就是说,加载项项目调用的 dll 项目将查找分别存储在 MSACCESS.EXE.config 和 EXCEL.EXE.config 中的密钥。使用的配置文件只会沿着 dll 链向上查找,直到找到实际调用的 exe 配置文件。