Как разработать надстройку Microsoft Office без Visual Studio - PullRequest
27 голосов
/ 07 декабря 2011

Я пытаюсь разработать надстройку MS Office на C # .Net, и у меня нет доступа к Visual Studio.Вместо этого я использую SharpDevelop в качестве своей IDE (но мой вопрос в равной степени относится к любому, кто разрабатывает с использованием любой другой IDE или компилирует из командной строки ...)

Я немного искал руководствао том, как разрабатывать надстройки, но все они, кажется, требуют Visual Studio и выполняют следующие действия:

  1. Установка сборок взаимодействия
  2. Создание проекта Visual Studio .Net ( IЯ не могу сделать этот бит )
  3. Расширить шаблон VS ThisAddIn

Что мне удалось сделать, это:

  1. Установка сборок взаимодействия
  2. Создание пустого проекта SharpDevelop на C #
  3. Добавление ссылки GAC в Microsoft.Office.Interop.Outlook
  4. Добавление ссылки COMв библиотеку объектов Microsoft Office 12.0
  5. добавьте строку using Outlook = Microsoft.Office.Interop.Outlook;
  6. и строку using Office = Microsoft.Office.Core;
  7. Посмотрите на пример кода и поймите, что все они ссылаются на шаблоны VSи библиотеки VSTO (Microsoft.Office.Tools), которых у меня нетve.

Куда мне идти отсюда?Я пропустил руководство или учебное пособие, или кто-то может дать некоторые советы?

Ответы [ 2 ]

18 голосов
/ 08 декабря 2011

NetOffice (http://netoffice.codeplex.com или https://osdn.net/projects/netoffice/) - это отличный набор независимых от версии сборок взаимодействия для Office. Это все, что вам нужно для создания надстроек с помощью SharpDevelop, и у проекта есть куча учебных пособий и примеров, в том числе для Outlook.

Если вы создаете надстройку для Excel, используя Excel-DNA (которая необходима для предоставления пользовательских функций рабочего листа из .NET), NetOffice по-прежнему предоставляет вам дополнительный набор библиотек для доступ к интерфейсам автоматизации Excel COM из надстройки Excel-DNA, поэтому они хорошо работают вместе.

Как для NetOffice, так и для Excel-DNA вы также сможете использовать бесплатные выпуски Visual Studio Express (с некоторыми небольшими приемами, необходимыми для отладки). Visual Studio Express вообще не включает VSTO. SharpDevelop также имеет гораздо больше возможностей, чем выпуски Express, такие как встроенный рефакторинг и инструменты перевода VB.NET <-> C #, поэтому есть веские причины предпочесть SharpDevelop в качестве бесплатной IDE.

0 голосов
/ 07 декабря 2011

РЕДАКТИРОВАТЬ: я пропустил ссылку на Outlook, мои извинения.

Для Outlook, посмотрите здесь .Outlook Redemption полезен.

Я не эксперт по Word, но в Интернете достаточно учебников.

Для Excel я бы посоветовал вам взглянуть на ExcelDNA

Множество ТАКИХ вопросов по этой теме.См. Предоставление методов .net в качестве функций Excel? , например, в качестве дополнительного совета о том, с чего начать и каковы ваши варианты.

...