如何在不使用Visual Studio的情况下开发Microsoft Office AddIn

时间:2011-12-07 12:53:24

标签: c# vsto ms-office add-in sharpdevelop

我正在尝试使用C#.Net开发MS Office Addin,但我无法访问Visual Studio。相反,我使用SharpDevelop作为我的IDE,(但我的问题与使用任何其他IDE开发或从命令行编译的任何人都同样相关......)

我已经做了一些关于如何开发AddIns的指南,但它们似乎都需要Visual Studio并按照以下步骤操作:

  1. 安装互操作程序集
  2. 创建一个Visual Studio .Net项目(我无法做到这一点
  3. 扩展VS ThisAddIn 模板
  4. 我设法做的是:

    1. 安装互操作程序集
    2. 创建一个C#空的SharpDevelop项目
    3. 向Microsoft.Office.Interop.Outlook
    4. 添加GAC引用
    5. 向Microsoft Office 12.0对象库添加COM引用
    6. 添加第using Outlook = Microsoft.Office.Interop.Outlook;
    7. 和第using Office = Microsoft.Office.Core;
    8. 查看一些示例代码并意识到它们都是指我没有的VS模板和VSTO库(Microsoft.Office.Tools)。
    9. 我从哪里开始?是否有我错过的指南/教程,或者有人可以提供一些指示?

2 个答案:

答案 0 :(得分:18)

NetOffice(http://netoffice.codeplex.comhttps://osdn.net/projects/netoffice/)是一组很好的与Office版本无关的互操作程序集。这就是使用SharpDevelop制作插件所需的全部内容,该项目还包含一些教程和示例,包括一些用于Outlook的插件。

如果您使用Excel-DNA(需要从.NET公开用户定义的工作表函数)为Excel创建加载项,NetOffice仍会为您提供一组用于访问Excel COM的补充库来自Excel-DNA插件的自动化界面,因此它们可以很好地协同工作。

对于NetOffice和Excel-DNA,您还可以使用免费的Visual Studio Express版本(需要一些小技巧才能使调试工作)。 Visual Studio Express根本不包含VSTO。 SharpDevelop还具有比Express版本更多的功能,如内置重构和VB.NET< - > C#翻译工具,所以有充分的理由选择SharpDevelop作为免费的IDE。

答案 1 :(得分:0)

编辑:我错过了对Outlook的提及,我的apolgies。

对于Outlook,请查看here。 Outlook Redemption很有用。

我不是Word专家,但网上有很多教程。

对于Excel,我建议您实际查看ExcelDNA

关于这个主题的很多问题。例如,请参阅Exposing .net methods as Excel functions?作为有关从哪里开始以及您的选项的其他建议。