Почему не автоматизация

Важные вопросы

  • Почему компоненты Aspose являются гораздо лучшим вариантом, чем автоматизация Microsoft Office?

Есть два вопроса, которые мы часто слышим в Aspose:

  • Требуют ли ваши продукты установки Microsoft Office для их работы?

Короткий и простой ответ — НЕТ.

Aspose и компоненты Aspose абсолютно независимы и не связаны с Microsoft Corporation, а также не аффилированы, не уполномочены, не спонсируются или иным образом не одобрены им.

  • Почему мы должны использовать продукты Aspose вместо автоматизации Microsoft Office?

Во-первых, есть множество преимуществ, которые вы получаете, используя Aspose.Slides.

Во-вторых, сама Microsoft настоятельно не советует использовать автоматизацию Office в программных решениях.

Обзор

Как мы уже упоминали ранее, есть несколько причин, по которым компоненты Aspose являются лучшей альтернативой автоматизации. Некоторые из ключевых причин:

  • Безопасность
  • Стабильность
  • Масштабируемость/Скорость
  • Цена
  • Функции

Мы подробно рассматриваем ключевые причины в следующих абзацах.

Безопасность

Следующее является прямой цитатой из статьи Microsoft:

“Приложения Office никогда не предназначались для использования на стороне сервера, и, следовательно, не учитывают проблемы безопасности, с которыми сталкиваются распределенные компоненты. Office не аутентифицирует входящие запросы и не защищает вас от случайного запуска макросов или запуска другого сервера, который может выполнять макросы, из вашего серверного кода. Не открывайте файлы, загруженные на сервер от анонимного веб! На основе последних установленных настроек безопасности сервер может выполнять макросы от имени администратора или системы с полными привилегиями и скомпрометировать вашу сеть! Кроме того, Office использует множество клиентских компонентов (таких как Simple MAPI, WinInet, MSDAIPP), которые могут кэшировать информацию для аутентификации клиента, чтобы ускорить обработку. Если Office автоматизируется на стороне сервера, один экземпляр может обслуживать более одного клиента, и поскольку информация для аутентификации была кэширована для этой сессии, возможно, что один клиент может использовать кэшированные учетные данные другого клиента, получая таким образом несанкционированный доступ к правам, выдавая себя за других пользователей.”

Продукты Aspose очень безопасны. Компоненты Aspose работают в том же контексте пользователя, что и все приложения ASP.NET (под пользователем ASPNET). Следовательно, компоненты Aspose не представляют собой риск для безопасности. Они также не потребляют критически важные системные ресурсы. Более того, когда компонент Aspose открывает документ, макросы не запускаются автоматически. Компоненты Aspose были созданы для того, чтобы разработчики могли создавать, изменять и сохранять файлы Office.

Стабильность

Этот текст является прямой цитатой из ранее упоминаемой статьи Microsoft:

“Office 2000, Office XP и Office 2003 используют технологию Microsoft Windows Installer (MSI), чтобы сделать установку и самовосстановление проще для конечного пользователя. MSI вводит концепцию “установки при первом использовании”, что позволяет функциям динамически устанавливаться или настраиваться во время выполнения (для системы, или чаще для конкретного пользователя). В среде на стороне сервера это как бы замедляет производительность, так и увеличивает вероятность появления диалогового окна, которое будет запрашивать пользователя о необходимости одобрить установку или предоставить соответствующий установочный диск. Хотя он предназначен для повышения устойчивости Office в качестве продукта для конечного пользователя, реализация возможностей MSI в Office неэффективна в среде на стороне сервера. Кроме того, устойчивость Office в целом не может быть гарантирована при запуске на стороне сервера, поскольку он не был спроектирован и протестирован для такого рода использования. Использование Office в качестве компонента службы на сетевом сервере может снизить стабильность этого компьютера и, следовательно, вашей сети в целом. Если вы планируете автоматизировать Office на стороне сервера, попытайтесь изолировать программу на выделенном компьютере, который не сможет повлиять на критические функции, и который можно будет перезапустить по мере необходимости.”

Так как компоненты Aspose упакованы в единую DLL, их пользователям никогда не нужно устанавливать дополнительные части или элементы для их функционирования. Компоненты Aspose используются только .NET-приложениями, и в коде компонента нет частей, предназначенных для ожидания ответа человека.

Масштабируемость/Скорость

Следующее является прямой цитатой из статьи Microsoft:

“Компоненты на стороне сервера должны быть высоко реентерабельными, многопоточными COM-компонентами с минимальными накладными расходами и высокой производительностью для нескольких клиентов. Приложения Office во всех отношениях являются точной противоположностью. Они нереферентные, основанные на STA серверы автоматизации, которые предназначены для предоставления разнообразного, но ресурсоемкого функционала для одного клиента. Они предлагают очень ограниченную масштабируемость в качестве решения на стороне сервера и имеют фиксированные лимиты на важные элементы, такие как память, которые нельзя изменить через конфигурацию. Более того, они используют глобальные ресурсы (такие как файлы с отображенной памятью, глобальные надстройки или шаблоны и общие серверы автоматизации), что может ограничивать количество экземпляров, которые могут работать одновременно, и приводить к состояние гонки, если они настроены в среде с несколькими клиентами. Разработчики, которые планируют запускать более одного экземпляра любого приложения Office одновременно, должны рассмотреть возможность пула или сериализации доступа к приложению Office, чтобы избежать потенциальных взаимных блокировок или повреждения данных.”

Компоненты Aspose невероятно масштабируемы и молниеносно быстры. Офисные приложения не были разработаны для того, чтобы одновременно использоваться сотнями или тысячами пользователей, но компоненты Aspose именно для этого и предназначены. Наши компоненты — это истинное решение для .NET.

Цена

Когда приложение использует автоматизацию Microsoft Office, нужно приобрести копию Microsoft Office для каждой машины, на которой работает приложение. Существует множество случаев, когда приложению может потребоваться создать или изменить файл Office, но этот процесс не требует Microsoft Office.

При создании веб-приложений важно помнить, что компоненты автоматизации Microsoft Office не имеют ценовых или лицензионных решений для серверных решений. Следовательно, нет хорошего лицензионного решения для развертывания веб-приложений, которые используют компоненты Microsoft Office. Aspose, с другой стороны, предлагает очень экономически эффективное решение для серверных приложений.

Функции

Компоненты Aspose предоставляют все, что необходимо для управления файлами Office, и многое другое. Мы разработали их, основываясь на нашей философии помощи разработчикам в достижении наилучших результатов с наименьшими усилиями.

Например, Aspose.Cells дает разработчикам возможность импортировать данные из DataTable или DataView непосредственно в файл Excel. Aspose.Words предоставляет аналогичную функцию, которая позволяет разработчикам заполнять документ Word (т.е. Mail Merge) непосредственно из любого .NET-объекта данных. Каждый компонент в семье Aspose предлагает свой собственный набор уникальных и мощных функций.

Лучшая часть покупки компонента Aspose — это получение доступа к нашим командами разработки. Например, если вы используете объекты автоматизации Office и вам нужны определенные функции, вероятность того, что эти функции будут добавлены, очень, очень мала. Однако ситуация другая с компонентами Aspose.

Наши команды всегда открыты и гибки при предоставлении помощи, и именно это позволило компонентам Aspose стать такими мощными, какими они являются сейчас.

Заключение