AutomationFactory — Необходимая информация

#silverlight #com #silverlight-4.0 #out-of-browser #comautomationfactory

#silverlight #com #silverlight-4.0 #вне браузера #comautomationfactory

Вопрос:

Я заинтересован в использовании пространства имен AutomationFactory, но я не могу найти никакой документации о том, что я могу использовать для отдельного COM. Я полагаю, это потому, что я не знаю, какие термины мне действительно следует искать. Есть ли у кого-нибудь какие-либо ресурсы? В частности, я ищу информацию в Excel, Word и Outlook.

Заранее спасибо!

Ответ №1:

AutomationFactory — это класс, а не пространство имен. Это специфично для Silverlight версии 4, среды выполнения, которая по умолчанию не поддерживает автоматизацию COM, только если приложение запускается из браузера как доверенное приложение. Статья о библиотеке MSDN находится здесь, внизу страницы есть ссылка на страницу с практическими рекомендациями.

Комментарии:

1. Спасибо, Ханс — на самом деле это был не мой вопрос, но я нашел ответ. Я искал дополнительную информацию, относящуюся к COM.

2. Ну, я думаю, пока ваш ответ имеет смысл для вас.

Ответ №2:

Вам следует начать с раздела MSDN здесь: Разработка Office

Затем я был бы склонен создать экспериментальное консольное приложение Windows и обратиться к соответствующим библиотекам office COM. Напишите код для управления COM-объектами office с использованием intellisense, получите некоторое представление о том, что действительно нужно приложению для работы.

Напишите целую кучу классов и методов, которые абстрагируют манипуляции, которые вы в конечном итоге хотите выполнить в Silverlight, от реальной механики операций с объектами office.

При переносе кода в Silverlight с использованием dynamic типа вы теряете весь intellisense для COM-объектов office, но на этом этапе вы создали кучу классов, которые после переноса будут использоваться вашим реальным кодом Silverlight для выполнения операций office.

Ответ №3:

Информация COM такая же, как и в VBA, поэтому, когда я выполняю поиск в Интернете, я просто ищу информацию, связанную с этим.