Я вполне перепутан с тем, что является необходимыми инструментами для VSTO develpment. Конкретно я хочу управлять документами Excel 2003/2007 программно. Я сделал довольно много VBA прежде, если Вы хотите связать какой-либо ответ на это.
Немного вопросов я имею о VSTO:
Будут цениться прямые ссылки на соответствующие инструменты/плагины/IDE.
Примечание: Я полностью плохо знаком с VSTO и.NET, но продвинутым пользователем Office. У меня есть опыт с программированием COM.
Да, он может быть запутанным, особенно учитывая конвенции по именованию на уровне пропуска и т. Д. По сути, вам понадобится:
Пара советов:
Есть некоторые сайты, которые вы должны взглянуть на:
Наконец, чтобы сохранить лучшее для последнего, это книга, которую я прочитал, когда меня только начинал, и это было очень полезно: VSTO для простых смертных (TM): Руководство по разработке VBA для разработки Microsoft Office Visual Studio 2005 Инструменты для офиса
Да, это можно сделать с помощью Наложения . Образец на веб-странице - это именно то, о чем вы говорите.
Для структуры проекта можно иметь что-то подобное:
. |-- PM-Core |-- PM-WebCommon (of type war, depends on core) |-- PM-Client1 (of type war, depends on webcommon) `-- PM-Client2 (of type war, depends on webcommon)
И использовать наложение в PM-Client1 и PM-Client2, чтобы «объединить» их с PM-WebCommon и пакетом войнами для каждого клиента.
UPDATE Я не буду освещать все детали, но я думаю, что объявление зависимости от войны с областью типа runtime
требуется при использовании оверлея, это то, как оверлей работает (на самом деле, вся накладная вещь является своего рода взлом). Теперь, чтобы решить проблему затмения, одним из решений будет создание JAR, содержащего классы проекта PM-WebCommon. Для этого используйте необязательный параметр attachClasses
и установите для него значение true
. Это позволит создать PM-WebCommon- < версия > -classes.jar
, который затем можно будет объявить как зависимость в PM-Client1 (с предоставленной областью
). Для получения подробной информации см. MWAR-73 и MWAR-131 . Это также обсуждается в FAQ военного плагина. Обратите внимание, что это не рекомендуется, правильным способом было бы переместить классы в отдельный модуль (и это другое решение, которое я хотел бы упомянуть).
UPDATE (201001018): Я попробовал параметр attachClasses
и он работает с версией 2 .1-beta-1 плагина.
Сейчас я реализую обходной путь:
alt text http://yuml.me/7f82bd5c
Я использую автономное java-приложение, которое принимает вызовы tcp от клиента и пересылает их как вызовы JNDI на сервер приложений.
-121--3367049-SpreadsheetGear for .NET - это компонент электронной таблицы, совместимый с Excel для .NET, который будет работать с выпусками Visual Studio Express, требует .NET 2.0 или более поздней версии, не требует установки Office или Excel и разрешает бесплатное распространение роялти на неограниченное количество клиентских и/или серверных компьютеров.
Вы можете посмотреть образцы в реальном времени здесь и скачать бесплатную пробную версию здесь .
Отказ от ответственности: я владею SpreadsheetGear LLC