C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  01.05.2010 — Update World C++: Сборник GPL QT исходников
  15.12.2007 — Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Хостинг:
Windows 2003, ASP.NET 2.0
бесплатный и от 80 руб./мес


   Отправить письмо
Кулабухов Артем, Беларусь




 46 - Inprosses и out-of-oprocess ActiveX / ActiveX по шагам / Приложение

Шаг 46 - Inprosses и out-of-oprocess ActiveX

В шаге "Шаг 14 - Немного о COM интерфейсах" мы говорили об этом. Но современные системы идет в направлении развития распределенных приложений и, я думаю, немного уделить времени, а лучше много стоит. Итак, COM может выполняться в двух местах:

  1. В процессе приложения
  2. В отдельном процессе

Все зависит от типа реализации, если ActiveX это DLL, то она будет выполняться только внутри процесса, если EXE, то может выполняться в отдельном процессе и при этом на той же машине или при дополнительных условиях на другой машине. Как же по CLSID можно определить где будет выполняться объект ? Для Вашей программы это абсолютно все равно, так как за это отвечает часть Windows под названием SCM. А вот, если Вы сами создаете элемент ActiveX, то Вам нужно решить это заранее и после создания зарегистрировать правильно этот компонент. Итак, есть два ключа реестра для CLSID:

LocalServer(32) - Этот ключ указывает на то, что ваш компонент реализован как EXE и может выполняться в отдельном процессе.

InProcServer(32) - Этот ключ указывает, что Ваш компонент DLL и должен выполняться в том же процессе.

Если строится распределенное приложение и элемент находится на сервере, то к ключу LocalServer добавляются некоторые параметры, которые помогают найти этот элемент в сети и запустить на удаленной машине.


| |
Автор Каев Артем.
[AD]