SlideShare a Scribd company logo
Компонентные и офисные приложения на
платформе Microsoft
2
Декларация сборки
Декларация сборки (Manifest) - составная часть сборки.
Это – также набор таблиц метаданных, который:
1. идентифицирует сборку в виде текстового имени, ее
версию, культуру и цифровую сигнатуру (если сборка
распределяется среди приложений);
2. определяет входящие в состав файлы (по имени и хэшу);
3. указывает типы и ресурсы, существующие в сборке,
включая описание тех, которые экспортируются из
сборки;
4. перечисляет зависимости от других сборок;
5. указывает набор прав, необходимых сборке для
корректной работы.
Корпоративные системы
Компонентные и офисные приложения
3
Схема выполнения .NET-приложения
в среде CLR
Корпоративные системы
Компонентные и офисные приложения
4
Домены приложений
Домен приложения (AppDomain ) - это логический контейнер сборок,
который используется для изоляции приложения в рамках
адресного пространства процесса.
Свойства доменов:
1. Домены изолированы друг от друга.
2. CLR способна выгружать домены вместе со всеми сборками,
связанными с этими доменами.
3. Возможна дополнительная конфигурация и защита доменов.
4. Для обмена данными между доменами реализован специальный
механизм безопасного доступа (маршалинг).
5. В .NET Framework разработана собственная компонентная модель,
элементами которой являются .NET-сборки (.NET-assembly) , а для
прямой и обратной совместимости с моделью СОМ/СОМ+ в CLR
встроены механизмы (COM Interop), обеспечивающие доступ к
СОМ-объектам по правилам .NET и к .NET-сборкам — по
правилам СОМ. При этом для .NET-приложений не требуется
регистрации компонентов в системном реестре Windows.
Корпоративные системы
Компонентные и офисные приложения
5
Виды сборок
В среде .NET выделяют следующие виды сборок:
1. частные (private). Представляют наборы типов,
которые могут быть использованы только теми
приложениями, где они включены в состав.
2. общего доступа (shared). Предназначены для
использования НЕОГРАНИЧЕННЫМ количеством
приложений на клиентском компьютере.
Корпоративные системы
Компонентные и офисные приложения
6
Взаимодействие объектов .NET и COM
При вызове объекта COM-клиентом .NET-среда Common Language Runtime:
1. создает всего одну временную оболочку RCW (Runtime Callable Wrapper)
независимо от количества ссылок на объект. Это гарантирует, что все
обращения к объекту происходят единственным путем.
2. на основе метаданных библиотеки создает вызываемый объект и оболочку
для возврата данных.
3. выполняет контроль сборки мусора в оболочке, упрощая разработку.
Функции оболочки RCW:
- сокрытие различий между управляемым и неуправляемым кодом;
- управление жизненным циклом COM-объекта;
- передача вызовов методов между управляемым и неуправляемым кодом;
- преобразование параметров методов.
В результате RCW позволяет разработчикам писать код, трактующий COM-
объекты как «обычные» .NET-объекты.
Корпоративные системы
Компонентные и офисные приложения
7
Просмотр содержимого сборки (1)
Содержимое сборки можно просмотреть, запустив дизассемблер
"Microsoft Intermediate Language Disassembler" (ildasm.exe).
Пример (простое консольное приложение):
using System;
namespace SimpleApp
{
class Class1
{
[STAThread]
static void Main(string[] args)
{
Console.WriteLine("Hello World");
}
}
}
Корпоративные системы
Компонентные и офисные приложения
8
Просмотр содержимого сборки (2)
Корпоративные системы
Компонентные и офисные приложения
9
Пример работы со сборками (1)
Для работы со сборками используется класс Assembly из пространства
имен System.Reflection.
Пример (сборка SimpleAssembly.dll):
using System;
namespace SimpleAssembly{
public class Class{
public static string HelloWorld(){
return "Нello world";
}
}
}
Корпоративные системы
Компонентные и офисные приложения
10
Пример работы со сборками (2)
Пример (приложение для загрузки в форму UsingLoadFrom):
using System;
using System.Reflection;
namespace UsingLoadFrom{
class Class1{
[STAThread]
static void Main(string[] args){
Assembly privateAss =
Assembly.LoadFrom("SimpleAssembly.dll");
MethodInfo info =
privateAss.GetTypes()[0].GetMethod("HelloWorld");
Object obj = info.Invoke(null, null);
Console.WriteLine("Результат выполнения метода:{0}",obj);
}
}
}
Корпоративные системы
Компонентные и офисные приложения
11
Преимущества компонентной
разработки приложений:
1. Снижение стоимости прикладного программного обеспечения
2. Повторное использование кода приложений для новых проектов
3. Унификация обработки объектов различной природы
4. Снижения влияния человеческого фактора на разработку
приложений
5. Строгое математическое основание (ламбда-исчисление)
6. Концепция универсальна – в одинаковой мере применима для
различных подходов к разработке приложений
(напр., функционального программирования и ООП)
Корпоративные системы
Компонентные и офисные приложения
Разработка офисных
приложений
при помощи расширений
Microsoft Visual Studio .NET
13
Содержание
– Microsoft Office System как платформа
– Преимущества использования Office как платформы
– Visual Studio Tools для Microsoft Office System
– Общая языковая среда выполнения
– Преимущества VSTO
– Что нового в VSTO 2005?
– VSTO Сравнение возможностей
– Расширенные компоненты Office
– Поддержка Actions Pane
– Разработка смарт-тэгов
– Поддержка программирования на уровне схем
– Кэширование данных
– Создание приложений на основе Outlook
– Модель безопасности в VSTO 2005
– Модель развертывания
– Использование панелей команд (пример)
– Библиография
Корпоративные системы
Компонентные и офисные приложения
14
Microsoft Office System как платформа
Модели интеграции различных бизнес-приложений
с продуктами семейства Office:
• Ручная интеграция
• Модель внешней автоматизации
• Интеграция на основе документов
• Интеграция на уровне приложений
Корпоративные системы
Компонентные и офисные приложения
15
Преимущества использования Office
как платформы
• отпадает необходимость в выполнении рутинных
операций копирования данных
• значительно снижаются затраты на обучение
• время разработки приложений существенно
сокращается
Корпоративные системы
Компонентные и офисные приложения
16
Visual Studio Tools для Microsoft Office System
• Использование VSTO позволяет объединить
разработку для .NET и для Office
• Предоставляет полный доступ к библиотеке классов
.NET Framework
• Предоставляет возможность применения объектно-
ориентированных языковых конструкций
• Использование VSTO существенно расширяет набор
инструментов и средств
• Применение Office и VSTO дает возможность связать
документы с «живыми» бизнес-данными
Корпоративные системы
Компонентные и офисные приложения
17
Общая языковая среда выполнения
• Управляет распределением памяти и следит, чтобы
ваш код не пытался выполнять запрещенные операции
• Обеспечивает доступ к Microsoft .NET Framework и
библиотекам базовых классов
• Новая архитектура VSTO позволяет разрабатывать
решения, которые тесно интегрированы и специально
ориентированы на использование управляемого кода.
Корпоративные системы
Компонентные и офисные приложения
18
Преимущества VSTO
Создание кода сборки, используемой в документе Microsoft Office Word
Корпоративные системы
Компонентные и офисные приложения
19
Что нового в VSTO 2005?
Среди новшеств Visual Studio 2005 Tools for the
Microsoft Office System можно отметить:
– поддержку интерфейсных компонентов, созданных
средствами .NET;
– расширенные компоненты Office;
– поддержку Actions Pane;
– разработку Smart Tags;
– поддержку программирования на уровне схем;
– кэширование данных;
– развертывание приложений на основе манифеста.
Корпоративные системы
Компонентные и офисные приложения
20
Visual Studio Tools for Office
Сравнение возможностей
Мощный UI
Взаимодействие
Все возможности Word и Excel
 
Панель задач на .NET

Решения VSTO работают на локальной машине,
внутри процесса Excel или Word  
2003
2005
Поддержка веб-служб через .NET Framework
 
Решения могут работать в оффлайн

Возможности кэширования

Серверный кэш

Веб-службы &
Оффлайн/онлайн
Корпоративные системы
Компонентные и офисные приложения
21
Visual Studio Tools for Office
Сравнение возможностей (2) 2003
2005
Для
разработчика
Все возможности Visual Studio
 
Все возможности .NET Framework
 
Визуальные дизайнеры для проектирования форм
Word и Excel 
Расширенные элементы управления Office
•Word: XMLNode, XMLNodes, Bookmark
•Excel: ListObject, NamedRange, XMLMappedRange

Элементы управления Windows Forms

Панель задач на .NET

Декларативная программная модель

Корпоративные системы
Компонентные и офисные приложения
22
Visual Studio Tools for Office
Сравнение возможностей (3)
Документы привязаны к сборке; сборки
размещаются на сервере  
Развертывание не требует участия пользователя
 
Модель развертывания ClickOnce

2003
2005
Управление
обновлениями
Развертывание
Корпоративные системы
Компонентные и офисные приложения
23
Расширенные компоненты Office
VSTO 2005 расширяет ряд встроенных объектов Word и Excel. Расширенные
компоненты (так называемые Host Controls) доступны через стандартную панель
компонентов, их свойства отображаются в Properties Explorer. Они программно
доступны через именованные поля, поддерживают связь с данными и расширяют
событийную модель.
Корпоративные системы
Компонентные и офисные приложения

More Related Content

PPT
4 особенности платформы microsoft .net для разработки корпоративных систем
PPT
6 создание распределенных приложений по технологии remoting
PPT
Lecture 11 1
PPT
Lecture 11 1
PDF
лек13 6
PDF
C# Desktop. Занятие 08.
PDF
дейнеко федоренко 11 б
DOCX
руководство Alfresco 4
4 особенности платформы microsoft .net для разработки корпоративных систем
6 создание распределенных приложений по технологии remoting
Lecture 11 1
Lecture 11 1
лек13 6
C# Desktop. Занятие 08.
дейнеко федоренко 11 б
руководство Alfresco 4

What's hot (16)

PPTX
модульное программирование (35)
PDF
лек11 2
PPT
8 создание приложений по технологии windows communications foundation
PPTX
My Trainings
PPT
Lecture 11 2
PDF
Alfresco ECM система с открытым кодом
PPTX
Bastion Training: Project Server 2010
PPT
PPT
Диаграмма развертывания
PPT
UML: CASE Tools Overview
PPTX
архитектура приложений mfc
PDF
Google I/O 2016 для разработчиков
PDF
лек11 3
PPTX
метод организации репозитория исходного кода
PPTX
Beginning mef by Владимир Лисник
PPTX
1.1 training tfs scrum
модульное программирование (35)
лек11 2
8 создание приложений по технологии windows communications foundation
My Trainings
Lecture 11 2
Alfresco ECM система с открытым кодом
Bastion Training: Project Server 2010
Диаграмма развертывания
UML: CASE Tools Overview
архитектура приложений mfc
Google I/O 2016 для разработчиков
лек11 3
метод организации репозитория исходного кода
Beginning mef by Владимир Лисник
1.1 training tfs scrum
Ad

Viewers also liked (20)

PPTX
QUINCY CHUGH-PORTFOLIOPortfolio
PPTX
Lissone genitori 2e 6 e 18 05 2015
PDF
Wooden safety-matches-manufacturer
PDF
Kwesi broadnax final-ppp slides
PDF
Relaciones Humanas en la Empresa (Isabel Terrero) I-U-T- (75)Turismo
PDF
HFeragen_Portfolio_2016
PDF
Guía de cuadriláteros
DOCX
Thoai Hoa Khop Xuong
PPT
0 wiki технологии
PPTX
Occupational identity slideshow Shannon F
PDF
Certificates
PPTX
Whitney houston......................
PDF
QUINCYCHUGH-PORTFOLIOPortfolio
DOCX
Kehidupan anak kos tugas AGAMA ISLAM
PDF
2014 IHBI Advances Edition 20
PPTX
Tactic in the job search procedure & standard Résumé writing procedure
PDF
Anmipro Presentation
PDF
Good Transboundary Water Governance
PDF
blending station
DOCX
Pan pel bem 2015
QUINCY CHUGH-PORTFOLIOPortfolio
Lissone genitori 2e 6 e 18 05 2015
Wooden safety-matches-manufacturer
Kwesi broadnax final-ppp slides
Relaciones Humanas en la Empresa (Isabel Terrero) I-U-T- (75)Turismo
HFeragen_Portfolio_2016
Guía de cuadriláteros
Thoai Hoa Khop Xuong
0 wiki технологии
Occupational identity slideshow Shannon F
Certificates
Whitney houston......................
QUINCYCHUGH-PORTFOLIOPortfolio
Kehidupan anak kos tugas AGAMA ISLAM
2014 IHBI Advances Edition 20
Tactic in the job search procedure & standard Résumé writing procedure
Anmipro Presentation
Good Transboundary Water Governance
blending station
Pan pel bem 2015
Ad

Similar to 10 компонентные и офисные приложения на платформе microsoft (20)

PPT
11 платформа microsoft office расширенные возможности
PPT
1С-Битрикс: Управление сайтом Версия .NET
PPTX
Inroducing SAP ABAP - Presentation with basics SAP ABAP
PPT
9 структура компонентных приложений
PPTX
Net framework
PPT
Dotnet
PPT
2IDE~1.PPT
PPT
Open Source Testing Framework: real project example and best practices
PPT
Реализация тестового фреймворка на основе OPEN-SOURCE инструментов
PPT
Share Point Workflow
PDF
Экскурс в мир WEB разработки
PPTX
Описание и архитектура TFS 2008
PPTX
Genome
PPT
Tfs Overview And Architecture (www.cmcons.com)
PDF
Artsofte for b2 b
PPT
Lotus Forum 2009 Websphere Portal 6.1
PPT
5 создание графического интерфейса пользователя
PDF
лек11 1
PPTX
Микросервисы в .NET Core
PPT
Embarcadero All-Access
11 платформа microsoft office расширенные возможности
1С-Битрикс: Управление сайтом Версия .NET
Inroducing SAP ABAP - Presentation with basics SAP ABAP
9 структура компонентных приложений
Net framework
Dotnet
2IDE~1.PPT
Open Source Testing Framework: real project example and best practices
Реализация тестового фреймворка на основе OPEN-SOURCE инструментов
Share Point Workflow
Экскурс в мир WEB разработки
Описание и архитектура TFS 2008
Genome
Tfs Overview And Architecture (www.cmcons.com)
Artsofte for b2 b
Lotus Forum 2009 Websphere Portal 6.1
5 создание графического интерфейса пользователя
лек11 1
Микросервисы в .NET Core
Embarcadero All-Access

More from KewpaN (12)

PPT
14 расширенные возможности корпоративных субд
PPT
13 расширенные возможности корпоративных приложений, основы субд
PPT
12 основные возможности корпоративных приложений
PPT
7 создание веб сервисов
PPT
3 средства автоматизации проектирования корпоративных приложений
PPT
2 виды и особенности клиент серверных систем с бд
PPT
1 открытые системы. клиент и сервер
PPT
0 wiki технологии
PPT
0 wiki технологии
PPT
0 wiki технологии
PPT
0 wiki технологии
PPT
0 wiki технологии
14 расширенные возможности корпоративных субд
13 расширенные возможности корпоративных приложений, основы субд
12 основные возможности корпоративных приложений
7 создание веб сервисов
3 средства автоматизации проектирования корпоративных приложений
2 виды и особенности клиент серверных систем с бд
1 открытые системы. клиент и сервер
0 wiki технологии
0 wiki технологии
0 wiki технологии
0 wiki технологии
0 wiki технологии

10 компонентные и офисные приложения на платформе microsoft

  • 1. Компонентные и офисные приложения на платформе Microsoft
  • 2. 2 Декларация сборки Декларация сборки (Manifest) - составная часть сборки. Это – также набор таблиц метаданных, который: 1. идентифицирует сборку в виде текстового имени, ее версию, культуру и цифровую сигнатуру (если сборка распределяется среди приложений); 2. определяет входящие в состав файлы (по имени и хэшу); 3. указывает типы и ресурсы, существующие в сборке, включая описание тех, которые экспортируются из сборки; 4. перечисляет зависимости от других сборок; 5. указывает набор прав, необходимых сборке для корректной работы. Корпоративные системы Компонентные и офисные приложения
  • 3. 3 Схема выполнения .NET-приложения в среде CLR Корпоративные системы Компонентные и офисные приложения
  • 4. 4 Домены приложений Домен приложения (AppDomain ) - это логический контейнер сборок, который используется для изоляции приложения в рамках адресного пространства процесса. Свойства доменов: 1. Домены изолированы друг от друга. 2. CLR способна выгружать домены вместе со всеми сборками, связанными с этими доменами. 3. Возможна дополнительная конфигурация и защита доменов. 4. Для обмена данными между доменами реализован специальный механизм безопасного доступа (маршалинг). 5. В .NET Framework разработана собственная компонентная модель, элементами которой являются .NET-сборки (.NET-assembly) , а для прямой и обратной совместимости с моделью СОМ/СОМ+ в CLR встроены механизмы (COM Interop), обеспечивающие доступ к СОМ-объектам по правилам .NET и к .NET-сборкам — по правилам СОМ. При этом для .NET-приложений не требуется регистрации компонентов в системном реестре Windows. Корпоративные системы Компонентные и офисные приложения
  • 5. 5 Виды сборок В среде .NET выделяют следующие виды сборок: 1. частные (private). Представляют наборы типов, которые могут быть использованы только теми приложениями, где они включены в состав. 2. общего доступа (shared). Предназначены для использования НЕОГРАНИЧЕННЫМ количеством приложений на клиентском компьютере. Корпоративные системы Компонентные и офисные приложения
  • 6. 6 Взаимодействие объектов .NET и COM При вызове объекта COM-клиентом .NET-среда Common Language Runtime: 1. создает всего одну временную оболочку RCW (Runtime Callable Wrapper) независимо от количества ссылок на объект. Это гарантирует, что все обращения к объекту происходят единственным путем. 2. на основе метаданных библиотеки создает вызываемый объект и оболочку для возврата данных. 3. выполняет контроль сборки мусора в оболочке, упрощая разработку. Функции оболочки RCW: - сокрытие различий между управляемым и неуправляемым кодом; - управление жизненным циклом COM-объекта; - передача вызовов методов между управляемым и неуправляемым кодом; - преобразование параметров методов. В результате RCW позволяет разработчикам писать код, трактующий COM- объекты как «обычные» .NET-объекты. Корпоративные системы Компонентные и офисные приложения
  • 7. 7 Просмотр содержимого сборки (1) Содержимое сборки можно просмотреть, запустив дизассемблер "Microsoft Intermediate Language Disassembler" (ildasm.exe). Пример (простое консольное приложение): using System; namespace SimpleApp { class Class1 { [STAThread] static void Main(string[] args) { Console.WriteLine("Hello World"); } } } Корпоративные системы Компонентные и офисные приложения
  • 8. 8 Просмотр содержимого сборки (2) Корпоративные системы Компонентные и офисные приложения
  • 9. 9 Пример работы со сборками (1) Для работы со сборками используется класс Assembly из пространства имен System.Reflection. Пример (сборка SimpleAssembly.dll): using System; namespace SimpleAssembly{ public class Class{ public static string HelloWorld(){ return "Нello world"; } } } Корпоративные системы Компонентные и офисные приложения
  • 10. 10 Пример работы со сборками (2) Пример (приложение для загрузки в форму UsingLoadFrom): using System; using System.Reflection; namespace UsingLoadFrom{ class Class1{ [STAThread] static void Main(string[] args){ Assembly privateAss = Assembly.LoadFrom("SimpleAssembly.dll"); MethodInfo info = privateAss.GetTypes()[0].GetMethod("HelloWorld"); Object obj = info.Invoke(null, null); Console.WriteLine("Результат выполнения метода:{0}",obj); } } } Корпоративные системы Компонентные и офисные приложения
  • 11. 11 Преимущества компонентной разработки приложений: 1. Снижение стоимости прикладного программного обеспечения 2. Повторное использование кода приложений для новых проектов 3. Унификация обработки объектов различной природы 4. Снижения влияния человеческого фактора на разработку приложений 5. Строгое математическое основание (ламбда-исчисление) 6. Концепция универсальна – в одинаковой мере применима для различных подходов к разработке приложений (напр., функционального программирования и ООП) Корпоративные системы Компонентные и офисные приложения
  • 12. Разработка офисных приложений при помощи расширений Microsoft Visual Studio .NET
  • 13. 13 Содержание – Microsoft Office System как платформа – Преимущества использования Office как платформы – Visual Studio Tools для Microsoft Office System – Общая языковая среда выполнения – Преимущества VSTO – Что нового в VSTO 2005? – VSTO Сравнение возможностей – Расширенные компоненты Office – Поддержка Actions Pane – Разработка смарт-тэгов – Поддержка программирования на уровне схем – Кэширование данных – Создание приложений на основе Outlook – Модель безопасности в VSTO 2005 – Модель развертывания – Использование панелей команд (пример) – Библиография Корпоративные системы Компонентные и офисные приложения
  • 14. 14 Microsoft Office System как платформа Модели интеграции различных бизнес-приложений с продуктами семейства Office: • Ручная интеграция • Модель внешней автоматизации • Интеграция на основе документов • Интеграция на уровне приложений Корпоративные системы Компонентные и офисные приложения
  • 15. 15 Преимущества использования Office как платформы • отпадает необходимость в выполнении рутинных операций копирования данных • значительно снижаются затраты на обучение • время разработки приложений существенно сокращается Корпоративные системы Компонентные и офисные приложения
  • 16. 16 Visual Studio Tools для Microsoft Office System • Использование VSTO позволяет объединить разработку для .NET и для Office • Предоставляет полный доступ к библиотеке классов .NET Framework • Предоставляет возможность применения объектно- ориентированных языковых конструкций • Использование VSTO существенно расширяет набор инструментов и средств • Применение Office и VSTO дает возможность связать документы с «живыми» бизнес-данными Корпоративные системы Компонентные и офисные приложения
  • 17. 17 Общая языковая среда выполнения • Управляет распределением памяти и следит, чтобы ваш код не пытался выполнять запрещенные операции • Обеспечивает доступ к Microsoft .NET Framework и библиотекам базовых классов • Новая архитектура VSTO позволяет разрабатывать решения, которые тесно интегрированы и специально ориентированы на использование управляемого кода. Корпоративные системы Компонентные и офисные приложения
  • 18. 18 Преимущества VSTO Создание кода сборки, используемой в документе Microsoft Office Word Корпоративные системы Компонентные и офисные приложения
  • 19. 19 Что нового в VSTO 2005? Среди новшеств Visual Studio 2005 Tools for the Microsoft Office System можно отметить: – поддержку интерфейсных компонентов, созданных средствами .NET; – расширенные компоненты Office; – поддержку Actions Pane; – разработку Smart Tags; – поддержку программирования на уровне схем; – кэширование данных; – развертывание приложений на основе манифеста. Корпоративные системы Компонентные и офисные приложения
  • 20. 20 Visual Studio Tools for Office Сравнение возможностей Мощный UI Взаимодействие Все возможности Word и Excel   Панель задач на .NET  Решения VSTO работают на локальной машине, внутри процесса Excel или Word   2003 2005 Поддержка веб-служб через .NET Framework   Решения могут работать в оффлайн  Возможности кэширования  Серверный кэш  Веб-службы & Оффлайн/онлайн Корпоративные системы Компонентные и офисные приложения
  • 21. 21 Visual Studio Tools for Office Сравнение возможностей (2) 2003 2005 Для разработчика Все возможности Visual Studio   Все возможности .NET Framework   Визуальные дизайнеры для проектирования форм Word и Excel  Расширенные элементы управления Office •Word: XMLNode, XMLNodes, Bookmark •Excel: ListObject, NamedRange, XMLMappedRange  Элементы управления Windows Forms  Панель задач на .NET  Декларативная программная модель  Корпоративные системы Компонентные и офисные приложения
  • 22. 22 Visual Studio Tools for Office Сравнение возможностей (3) Документы привязаны к сборке; сборки размещаются на сервере   Развертывание не требует участия пользователя   Модель развертывания ClickOnce  2003 2005 Управление обновлениями Развертывание Корпоративные системы Компонентные и офисные приложения
  • 23. 23 Расширенные компоненты Office VSTO 2005 расширяет ряд встроенных объектов Word и Excel. Расширенные компоненты (так называемые Host Controls) доступны через стандартную панель компонентов, их свойства отображаются в Properties Explorer. Они программно доступны через именованные поля, поддерживают связь с данными и расширяют событийную модель. Корпоративные системы Компонентные и офисные приложения