VSTO Development с установленными параллельно Office 2003 и 2007?

Поддерживает ли VSTO 3.0 (с использованием Visual Studio 2008) как Office 2003, так и Office 2007, установленные параллельно на одном компьютере для разработки, чтобы можно было использовать как Office 2003, так и Office 2007 (в отдельных решениях)?

Я видел противоречивую информацию по этому поводу.

НЕТ: http://msdn.microsoft.com/en-us/library/bb398242.aspx

Инструменты Visual Studio для Office не поддерживают установку Microsoft Office 2003 и системы Microsoft Office 2007 (или разных версий одного и того же приложения, например Word 2003 и Word 2007) одновременно на компьютере разработчика. Чтобы разрабатывать решения для разных версий Microsoft Office, используйте разные компьютеры разработчика для каждой версии Microsoft Office.

ДА: http://msdn.microsoft.com/en-us/library/15s06t57.aspx

При установке Visual Studio Tools для Office основные сборки взаимодействия автоматически устанавливаются в место в файловой системе за пределами глобального кэша сборок. Когда вы создаете новый проект, Visual Studio Tools for Office автоматически добавляет ссылки на эти копии основных сборок взаимодействия в ваш проект. Инструменты Visual Studio для Office используют эти копии основных сборок взаимодействия вместо сборок в глобальном кэше сборок для разрешения ссылок на типы при разработке и построении проекта.

Эти копии основных сборок взаимодействия помогают инструментам Visual Studio для Office избежать нескольких проблем разработки, которые могут возникнуть, когда в глобальном кэше сборок зарегистрированы как версии 2003, так и версии 2007 основных сборок взаимодействия Office ».

Кто-нибудь делал это и были ли проблемы?


person user265445    schedule 03.02.2010    source источник
comment
Возможно, мне здесь что-то не хватает, но если предположить, что на вашем компьютере могут быть обе версии Office, чего вы ожидаете, когда вы отлаживаете свой проект? Какую версию офисного приложения следует запустить?   -  person Mathias    schedule 19.02.2010
comment
Когда я настраиваю приложение, я нацеливаю его на конкретную версию Office, используя один из встроенных шаблонов, поэтому я хотел бы, чтобы оно могло отлаживать тот, с которым оно было создано. Теоретически он использует локальные копии pia, а не те, что находятся в gac, поэтому, вероятно, он может работать. Насколько я понимаю, наличие обеих версий вызывает проблемы, но я сам не пробовал.   -  person user265445    schedule 23.02.2010
comment
@ Матиас, я думаю, у тебя проблема не так. Вопрос в том, когда вы запустите Office2003 / 2007, загрузится ли ваш vsto addin в обоих случаях? Когда вы отлаживаете приложение Office, вы запускаете, например, Excel, и просто подключаетесь к этому процессу или настраиваете свой проект для запуска .exe (либо office2003, либо 2007, в зависимости от того, с чем вы хотите его протестировать)   -  person PandaWood    schedule 22.12.2010


Ответы (2)


Вы можете настроить таргетинг на 2003 и 2007 на один и тот же компьютер, но для этого вам понадобятся две разные программы в Visual Studio (например, MyCoolThingfor2003.sln и MyCoolThingfor2007.sln), поскольку они имеют разные взаимодействия. Но на одном компьютере не должны быть установлены обе программы Office.

person Todd Main    schedule 03.02.2010
comment
Чтобы настроить таргетинг на версию, я думаю, вам необходимо установить эту версию (например: для таргетинга на 2007 вам нужно установить 2007). Если я не могу установить обе версии Office на одном компьютере для разработки, как я могу настроить таргетинг на обе версии? - person user265445; 03.02.2010
comment
Да, это может сбить с толку. Вам понадобится VSTO 2005 SE для многоцелевого использования, но только один из этих продуктов, установленных на вашем компьютере из Office 2003 или Office 2007. См. Требования на microsoft.com/downloads/ - person Todd Main; 03.02.2010
comment
Разве VSTO 2005 SE не только для VS 2005? Ваша ссылка была для версии среды выполнения для пользовательского компьютера, а не для разработчика. VS 2008 поставляется с VTSO 3.0. - person user265445; 03.02.2010
comment
Извините за путаницу. Да, для установки VSTO 2005 SE вам понадобится VS 2005. Для VS 2008 он поставляется с VSTO 3.0, но среда выполнения - VSTO 2005 SE, если вы ориентируетесь на решения 2003 года. Таким образом, вы можете использовать VS 2008 для разработки для обоих, но требуемые среды выполнения interops / VSTO / .NET будут разными для каждого решения. - person Todd Main; 03.02.2010
comment
Я все еще немного запутался. Итак, могу ли я установить VS2008, Office 2003 и Office 2005 на моем компьютере для разработки и затем настроить надстройку для любой из версий Office? Или мне также нужно установить VS2005 и / или VSTO 2005 SE для целевого Office 2003? - person user265445; 04.02.2010
comment
Я предполагаю, что вы имели в виду Office 2007, когда писали Office 2005. В таком случае у вас не должно быть одновременно Office 2003 и Office 2007 на вашем компьютере - только один из них. С VS2008 вы сможете настроить таргетинг либо на 2003, либо на 2007 (но для пакета Offce, который не установлен на вашем компьютере разработчика, вам нужно будет протестировать это решение на другом компьютере). VS2008 использует две отдельные технологии для ваших целей (VSTO2005SE для решений 2003 года и VSTO3 для решений 2007 года). Вы также можете проверить это: stackoverflow.com/questions/2063866/ начало-всто-разработка / - person Todd Main; 04.02.2010
comment
В настоящее время на моем компьютере для разработки установлены VS2008 и Office 2007. Я могу создать проект, ориентированный на Office 2007. Когда я создаю проект, ориентированный на Office 2003, я сразу получаю сообщение об ошибке. Для этого проекта требуется Microsoft Office Excel 2003 и зарегистрированные первичные сборки взаимодействия, но они не установлены. Похоже, он говорит мне, что мне нужно установить Office 2003 (но я подумал, что у меня не должно быть обеих версий Office на машине разработки)? - person user265445; 04.02.2010
comment
Вы пытаетесь создать надстройку Excel 2003, книгу Excel 2003 или шаблон Excel 2003? В вашей среде вы сможете без проблем создать надстройку Excel 2003. Попробуйте перейти в панель управления и в разделе «Установка программ» найдите «Инструменты Visual Studio 2005 для второго выпуска Office», нажмите «Удалить / изменить», а затем выберите «Восстановить». Шаблоны и книги Excel 2003 не поддерживаются для разработки в этой среде, если у вас не установлен Excel 2003 (или Office 2003) - в этом случае у вас не должен быть установлен Office 2007. - person Todd Main; 05.02.2010
comment
Я пытаюсь создать надстройку для Excel 2003. Кстати: по дополнительной информации - у меня уже был установлен VS2005 на этой машине. Итак, у меня есть VS2005, VS2008 и Office 2007. - person user265445; 05.02.2010
comment
Хм .. Я такой конфигурации раньше не видел. Вы уже пробовали ремонт на VSTO 2005SE? Одна из причин для этого заключается в том, что параметры установки VS2008 по умолчанию не позволяют установить все, что вам нужно (если, конечно, вы не решите установить все). L. - person Todd Main; 05.02.2010

Вы не можете установить Office 2003 и 2007 одновременно. Две опубликованные вами ссылки говорят о разных вещах. Первая ссылка говорит «нет» установке фактического приложения Office 200x, тогда как вторая ссылка относится к PIA (которая является просто оболочкой). Вы можете установить любую версию PIA на компьютер бок о бок, но это не означает, что будут запускаться разные версии Office.

Если ваша цель - разработать надстройку VSTO, которая поддерживает как Office 2003, так и Office 2007, вам необходимо разработать систему с VS2008 + Office 2003.

person ericphan    schedule 19.11.2010