English version

RSS

COM/DCOM/COM+

Основы

Автор: Том Армстронг
Источник: "ActiveX-Создание Web-приложений", глава 6
Материал предоставил: Евгений Щербатов
Аннотация: В этой главе, позаимствованной из книги "ActiveX-Создание Web-приложений" Тома Армстронга, рассматриваются основные понятия модели COM, такие как интерфейс IUnknown, GUID, фабрики классов и т. д. Кроме того, автор приводит примеры реализации COM-клиентов и COM-серверов с использованием языка C++, Visual Basic и библиотеки ATL.

Ключевые слова:
Авторы: Стив Робинсон (Steve Robinson)
Алекс Крассел (Alex Krassel)
Источник: «Технология Клиент-Сервер»
Аннотация: Эта статья продемонстрирует компоненты COM, которые допускают многократное использование аналогично автомобильным шинам. Использование COM позволит разработать серию программных продуктов за более короткий срок, чем без применения этой технологии. Зная как создавать COM объекты и интерфейсы, можно разрабатывать взаимозаменяемые компоненты.

Ключевые слова:
Автор: Alex Fedotov
Аннотация: Здравствуйте, Ellin, Вы писали:<br /> <span class='lineQuote level1'><br /> E&gt;Кто что думает по поводу прав ли я? По моему dll в подавляющем большенстве случаев хуже COM. И нужно стараться всегда использовать COM. А?</span><br /> <br /> Все зависит от того, что вы понимаете под COM и как вы собираетесь его использовать. Я для себя разделяю на две части: ид...

Ключевые слова:

COM vs. CORBA

Автор: Михаил Купаев
Источник: «Технология Клиент-Сервер»
Аннотация: "В споре технологий точку может поставить только время. Технологии-победительницы живут и развиваются, проигравшие, как легко догадаться, вымирают...."

Ключевые слова:
Автор: Александр Цимбал
Источник: «Технология Клиент-Сервер»
Аннотация: "Основным способом, используемым для создания CORBA-приложений, является так называемый «статический» подход – основой является набор IDL-объявлений, на базе которого компилятор с языка IDL генерирует все необходимое для взаимодействия программы и CORBA..."

Ключевые слова:
Автор: Чистяков В.Ю.
Источник: «Технология Клиент-Сервер»
Аннотация: Эта статья входит в цикл "COM vs. CORBA" и знакомит читателя с основами COM, начиная с интерфейса IUnknown и заканчивая маршалингом, DCOM и COM+.

Ключевые слова:
Источник: «Технология Клиент-Сервер»
Аннотация: В таблице 1 приведены результаты тестов, целью которых является сравнение скорости вызовов в COM и CORBA. Для этого были созданы объекты, содержащие пять методов.

Ключевые слова:
Источник: «Технология Клиент-Сервер»
Аннотация: Для всех примеров CORBA нужно иметь правильно установленный VisiBroker. Для запуска примеров необходимо запустить VisiBroker SmartAgent, а затем - сервер CORBA.

Ключевые слова:

Исследования

Автор: Павел Блудов
Аннотация: В статье рассматриваются способы перебора интерфейсов неизвестного объекта и возможность их восстановления из файлов с отладочной информацией (pdb).

Ключевые слова:
Материал предоставил: Журнал "Технология Клиент-Сервер"
Аннотация: В Internet-конференциях часто задаются вопросы, связанные с использованием таких типов, как VARIANT, SafeArray, BSTR и им подобных. Эти типы и API для работы с ними появились еще в 1995 году. Microsoft уже заявляет об отказе от развития COM, а количество вопросов не уменьшается.

Ключевые слова: VARIANT,SafeArray
Автор: Чистяков В.Ю.
Источник: «Технология Клиент-Сервер»
Аннотация: Код к статье.

Ключевые слова:
Автор: Тимофей Казаков (TK)
Источник: RSDN Magazine #6-2003
Аннотация: Статья описывает принципы работы с контекстами объектов в COM и СOM+.

Ключевые слова:
Автор: Jeff Prosise
Перевод: Павел Блудов
Источник: CodeGuru::Into the IUnknown
Аннотация: В этой статье подробно рассматриваются подразделения (apartments) в модели COM. Автор описывает различные виды подразделений, показывает, каким образом подразделения назначаются потокам и объектам, а также даёт ряд полезных советов, которые позволят вам избежать ошибок при работе с подразделениями.

Ключевые слова:
Автор: Чистяков В.Ю.
Источник: «Технология Клиент-Сервер»
Аннотация: В прошлом номере нашего журнала были опубликованы два обзора – по CORBA и COM. Их целью было дать представление о конкурирующей технологии программистам, уже владеющим одной из них. Но эти обзоры можно использовать и как систематизирующий материал, позволяющий ориентироваться в соответствующих техн...

Ключевые слова:
Автор: Виктор Шарахов
Источник: RSDN Magazine #2
Аннотация: Моникером называют СОМ-объект, реализующий интерфейс IMoniker и позволяющий клиенту получить указатель на объект, идентифицируемый этим моникером, через вызов метода IMoniker::BindToObject. По имени этого метода процесс получения объекта от моникера называют связыванием моникера или активизацией объекта.

Ключевые слова: moniker,BindToObject,BindToStorage,Reduce,ComposeWith,Enum,IsEqual ,Hash,IsRunning,GetTimeOfLastChange,Inverse,CommonPrefixWith,GetDisplayName,ParseDisplayName,RelativePathTo,IsSystemMoniker
Автор: Vi2
Аннотация: Здравствуйте Финченко Юрий, Вы писали:<br /> <span class='lineQuote level1'><br /> ФЮ&gt;Вопрос номер два. А то у меня понятия стали путаться.</span><br /> <span class='lineQuote level1'>ФЮ&gt;Что такое моникер?</span><br /> <br /> В любой объектно-ориентированной (ОО) системе полезно иметь способ идентификации <b>конкретного</b> экземпляра объекта. Эта идентификация (именование) в общем случае требует у...

Ключевые слова:
Автор: Павел Коломиец
Источник: RSDN Magazine #3-2003
Аннотация: Для получения информации о COM объектах существуют специальные утилиты (например, входящий в состав Студии "OLE/COM Object Viewer"), которые и расскажут, и покажут, и IDL напишут. Но иногда необходимо получить эти данные "на лету", во время выполнения программы. Механизмам получения информации об интерфейсах и посвящена эта статья.

Ключевые слова: typeinfo
Автор: Владислав Чистяков
Источник: RSDN Magazine #0
Аннотация: Исполняемые файлы для примеров ComSec и ComSrvEvents (ComSecModules.zip - 109 KB) Исходные тексты для примера ComSec - 32 KB Исходные тексты для примера ComSrvEvents - 34 KB

Ключевые слова:
Автор: Евгений Щербатов
Аннотация: В статье рассматриваются вопросы, связанные с использованием работы серверов в режиме Single/Multiple Instances, а так же способы, которыми решается эта задача в MFC и ATL.

Ключевые слова:
Автор: А. Новик
Источник: «Технология Клиент-Сервер»
Аннотация: Распределенные приложения, в которых сервер должен оповещать клиентов об изменениях важной для них информации, встречаются довольно часто. Такими программами могут быть приложения, отслеживающие стоимость акций и сообщающие об изменениях их курса, программы мониторинга погоды, отслеживающие показа...

Ключевые слова:
Автор: Алексей Шуленин
Источник: «Технология Клиент-Сервер»
Аннотация: "Настоящая статья основывается на материалах докладов, сделанных автором на ежегодной конференции разработчиков DevCon. Учитывая повышенный интерес, проявленный аудиторией к данной тематике..., было бы целесообразно, на мой взгляд, немного более подробно остановиться на назначении и функциональных возможностях Microsoft Transaction Server..."

Ключевые слова:
Автор: А. Новик
Источник: «Технология Клиент-Сервер»
Аннотация: Разработчикам распределенных приложений иногда необходимо создавать программы, работающие в асинхронном режиме.

Ключевые слова:
Автор: Джефф Просайс (Jeff Prosise)
Источник: «Технология Клиент-Сервер»
Аннотация: "В Windows 2000 реализована первая версия COM, поддерживающая асинхронные вызовы методов. Это позволяет клиентам производить неблокирующие вызовы COM-объектов, а объектам - обрабатывать входящие, не блокируя очереди..."

Ключевые слова:
Автор: Игорь Ткачёв
Источник: RSDN Magazine #2
Аннотация: ...сегодня мы рассмотрим и сравним две родственные технологии для построения распределённых систем – DCOM и её преемницу .NET Remoting. В первую очередь нас будут интересовать скорость вызова методов и время создания (соединения) удалённого объекта.

Ключевые слова: Remoting test,TCP test,SOAP test,DCOM test
Автор: Алексей Остапенко
Источник: RSDN Magazine #3-2003
Аннотация: Статья описывает возможный метод перехвата вызовов интерфейса IUnknown COM-объекта. В качестве примера создается прокси-объект, позволяющий практически "прозрачно" подменить контекст пользователя, под которым производится вызов удаленного объекта из скриптовых языков.

Ключевые слова: QueryInterface перехват, IUnknown перехват

Перехват методов COM интерфейсов

Автор: Ivan Andreyev
Источник: RSDN Magazine #1-2004
Аннотация: В статье продолжается обсуждение темы перехвата вызовов методов COM-интерфейсов. Рассматривается использование API-функций, позволяющих упростить эту задачу.

Ключевые слова: COM, Interface
Автор: Иван Андреев aka Ivan
Источник: RSDN Magazine #2-2005
Аннотация: Эта статья является продолжением статьи “Перехват методов COM интерфейсов”, опубликованной в RSDN Magazine #1’2004. В предыдущей части статьи описан перехват вызовов automation-совместимых интерфейсов. В этой части описывается решение, позволяющее перехватывать и не-automation-совместимые интерфейсы. Требуется знание COM и C++.

Ключевые слова: COM, перехват методов

Практика

Автор: Игорь Ткачёв
Аннотация: Однажды я занимался проектом, главной особенностью которого было наличие большого количества типовых форм ввода и вывода. Что-то типа делопроизводства. Документы должны были заполняться данными из БД или другими данными, которые может предоставить программа. При этом было бы крайне желательно, чтобы шаблон документа мог разобраться с этими данными самостоятельно. Оказалось, что всем этим требованиям вполне удовлетворяет MS Office. В этой статье я попытаюсь это продемонстрировать.

Ключевые слова:
Автор: Alexey Shirshov
Источник: RSDN Magazine #4-2004
Аннотация: можно в коде MTS/COM+-компонента найти, в каком апартменте он создан, причем для STA – в каком именно STA – host, main или ином, и как-то идентифицировать апартмент

Ключевые слова:
Автор: Oleg Koleskin
Источник: RSDN Magazine #6-2004
Аннотация: Рассматривается пример автоматизации OpenOffice.org Calc.

Ключевые слова: OpenOffice
Авторы: Егор Синькевич
Сергей Холодилов
Источник: RSDN Magazine #4-2004
Аннотация: Статья описывает реализацию синглтона, физически размещаемого в DLL, но уникального в пределах компьютера. Данная реализация позволяет создавать подобные синглтоны в своих проектах изменением одной­единственной строки кода.

Ключевые слова: Singleton, COM
Автор: Игорь Ткачёв
Аннотация: В данной статье приводится объяснение работы директивы #import компилятора Visual C++ и даны примеры её использования с MS Word, MS Excel, ADO DB и ActiveX Control.

Ключевые слова:
Автор: Юнусов Булат
Аннотация: Здравствуйте, Wit, Вы писали:<br /> <span class='lineQuote level1'><br /> Wit&gt;P.S. директиву #import не хочется использовать по причине неоходимости точного указания путей к файлам</span><br /> <br /> Пути к файлам давно можно не указывать:<br /> [ccode]<br /> // msado25.tlb<br /> #import "libid:{00000205-0000-0010-8000-00aa006d2ea4}" auto_rename<br /> <br /> // dao360.dll<br /> #impor...

Ключевые слова:
Автор: Vi2
Аннотация: Здравствуйте, AndyCyborg, Вы писали:<br /> <br /> Я с проблемами с ADO не сталкивался, поэтому и не сразу написал. <img border='0' width='15' height='15' src='../Forum/images/frown.gif' /> <br /> <br /> Итак, IDL файл необходим для определения интерфейсов, что следует из аббревиатуры. Однако он сам используется редко, чаще используется его бинарный эквивалент в виде TLB файла. А также он ...

Ключевые слова:
Автор: Евгений Щербатов
Аннотация: Статья посвящена реализации механизма self-unregistration в СОМ-серверах, созданных на базе библиотеки MFC. Эта возможность, просто необходимая для любого нормального СОМ-сервера, не добавляется в MFC-приложения по умолчанию.

Ключевые слова:
Автор: Сергей Холодилов
Источник: RSDN Magazine #1-2003
Аннотация: Статья описывает технологию использования COM из DLL, загружаемых приложениями, ничего не знающих о COM. Такая ситуация часто возникает в плагинах.

Ключевые слова: COM, DLL
Автор: Vi2
Аннотация: Где-то когда-то встречался вопрос, как из указателя на интерфейс получить указатель на класс, которым этот указатель имплементирован. Сейчас не могу найти где это было, а материал попался интересный. Может кому-то в ряде случаев и будет полезным.<br /> <br /> HOWTO: Get a C++ Class from an Interface Pointer i...

Ключевые слова:
Автор: Vi2
Аннотация: <span class='lineQuote level1'>А&gt;Можно ли как-то использовать в IDL-никах струкутры из .h файлов?</span><br /> <span class='lineQuote level1'>А&gt;проблема с window-ой структурой WAVEFORMAT котору хочеться поюзать как параметр интерефейса..</span><br /> <span class='lineQuote level1'><br /> RB&gt;Обычно наоборот, по idl генерируют "ашники"...</span><br /> <span class='lineQuote level1'><br /> А&gt;В том то и беда что WAVEFORMAT структура и соотв. mmreg.h существовал задолго ...</span>

Ключевые слова:
Автор: VladD2
Аннотация: Всем привет.<br /> <br /> Навеяно вот этими топиками:<br /> <br /> <a class=" tips m" href="https://rsdn.org/Forum/?mid=124975" rel="#dGalwM" title="C#-овский COM-объект для C#-клиента">http://www.rsdn.ru/Forum/?mid=124975<div class="tooltip" id="dGalwM">Автор: SCS<br />Дата: 04.11.02</div></a><br /> <a class=" tips m" href="https://rsdn.org/forum/Message.aspx?mid=125632&amp;only=1" rel="#fnDFyC" title="От COM'а к Reflection">http://www.rsdn.ru/forum/Message.aspx?mid=125632&amp;amp;only=1<div class="tooltip" id="fnDFyC">Автор: IT<br />Дата: 05.11.02</div></a><br /> ну и еще многими другими... в общем достали. <img border='0' width='15' height='15' src='../Forum/images/smile.gif' /><br /> <br /> Итак почему же столько проблем с COM+-ом если компоненты, и особенно клиента создавать средствами .NET Fram...

Ключевые слова:
Автор: Анисимов Антон
Аннотация: В одно время у меня возникла необходимость в общении с Excel2000, при чем, объемы данных должны были проходить большие, что привело к появлению этой DLL-ки. При открытии файла все данные, находящиеся в нем загружаются в динамический строковый кэш (при нынешних объемах памяти это не так много) и потом можно работать с ним. К сожалению, форматирование не кэшируется, да и задач таких не ставилось. В результате тестирования программа, работающая с Excell с помощью OLE (COM тоже пробовали) втискивала туда 15000 ячеек за 50 секунд, а через эту DLL-ку за 3. Разница, как говорится, на лице :).

Ключевые слова: Excel
Автор: Сергей Иванов
Источник: RSDN Magazine #3-2005
Аннотация: В настоящей статье не будет рассматриваться C++ with managed extensions – разработка COM-объектов с помощью этого языка программирования не очень существенно отличается от традиционной разработки с помощью C++. Ограничимся лишь C#, который позволяет разрабатывать COM-объекты гораздо проще, чем C++ или Delphi (субъективное мнение автора, основанное на личном практическом опыте). Более того, не будут здесь рассматриваться ни общие вопросы COM, ни конкретные механизмы и технологии C# для разработки COM – все это достаточно подробно документировано в MSDN. Будет рассмотрен абсолютно частный вопрос, который, к сожалению, не нашел отражения ни в MSDN, ни в других источниках информации, доступных автору, включая поиск в Сети – как средствами C# реализовать COM-коллекции.

Ключевые слова: COM-коллекции
Автор: Владислав Чистяков
Источник: «Технология Клиент-Сервер»
Аннотация: Пример коллекции на ATL/ascLib - 16 kb Пример коллекции на ATL/STL (из MSDN) - 21 kb Библиотека ascLib

Ключевые слова:
Автор: Удалов В.А.
Аннотация: В системах семейства Windows широко распространен пользовательский интерфейс на базе так называемых страниц свойств (Property Pages). Страницы свойств в виде закладок отображаются в специальном диалоговом окне, который называется "Панель свойств" (Property Sheet). Такие диалоги используются в Windows довольно часто от настроек шрифта и цвета, до управления безопасностью и параметрами системы. Property Page может использоваться не только как отдельный элемент управления. В объектной модели Windows она предоставляет собой графический интерфейс для просмотра и редактирования свойств некоторого COM-объекта. Об этой возможности использования страниц свойств пойдет речь в данной статье.

Ключевые слова: Property Pages, Property Sheet

Connection points

Автор: Владислав Чистяков
Источник: «Технология Клиент-Сервер»
Аннотация: Часто при использовании COM-объектов в С++-программах встает необходимость подключения к их событиям. Если вы используете MFC, VCL или другие высокоуровневые библиотеки классов, проблем не возникает, так как для решения этой задачи существуют «мастера» и т.п. Но когда такая проблема возникает при ра...

Ключевые слова:
Автор: Odi$$ey
Аннотация: <span class='lineQuote level2'>OE&gt;&gt;Как в ATL клиенте подписываться на события надо объяснять?</span><br /> <span class='lineQuote level1'>E&gt;ДА!</span><br /> <br /> Ok, например в клиенте есть диалог, в котором нужно ловить события от COM-сервера:<br /> <br /> <pre class='c'><code><span class='kw'>class</span> CMainDlg : <span class='kw'>public</span> CAxDialogImpl&lt;CMainDlg&gt; , <span class='kw'>public</span> CDialogResize&lt;CMainDlg&gt; {</code></pre><br /> <br /> добавляем туда следующ...

Ключевые слова:
Автор: Tom
Аннотация: <span class='lineQuote level1'>&gt; 2) Законно ли в COM объектах использовать стандартные функции WIN API для создания и управления потоками (такие как CreateThread, TerminateThread и пр.)?</span><br /> <br /> Законно. Надо только не забыть вызвать <b>CoInitialize[Ex]</b> в потоке. Так же лучше пользоваться __beginthreadex, для инициализации С++ ран...

Ключевые слова:
Автор: shrek
Аннотация: Здравствуйте, Kirill.CP, Вы писали:<br /> <span class='lineQuote level1'><br /> KC&gt;Да все правильно ATLCPImplMT.h</span><br /> <span class='lineQuote level1'>KC&gt;В этом файле ошибки и происходят.</span><br /> <br /> [ccode]<br /> //&lt;Nick&gt; 17.07.2004<br /> // DWORD dwGITCookie = (DWORD)_CDV::GetUnknown(dwCookie);<br /> DWORD dwGITCookie = reinterpret_cast&lt;DWORD&gt;(m_vec.GetUnknown(dwCookie)); <br /> <br /> .......<br /> <br /> //&lt;Nick ...

Ключевые слова:
Автор: Евгений Щербатов
Аннотация: Статья посвящена технологии Connection Points в программах на MFC. Автор кратко описывает сущность и назначение этой технологии, а затем демонстрирует создание COM-клиента и COM-сервера на базе MFC с её использованием.

Ключевые слова:
Автор: Владислав Чистяков
Источник: "Технология Клиент-Сервер"
Аннотация: В реализации IDispEventImpl имеется ошибка, которая так и не исправлена ни в одном из пакетов исправлений для VS6 (включая SP5). При обработке событий, параметры которых имеют различные типы данных и размеры, функции-обработчики событий получают некорректные значения параметров. Следующий пример буд...

Ключевые слова:
Авторы: Алексей Кирюшкин
Andrew Merkushev
Аннотация: Как получать COM-бытия в скриптах

Ключевые слова: VBScript, JScript, events, WithEvents
Автор: AndrewJD
Аннотация: Здравствуйте, Аноним, Вы писали:<br /> <span class='lineQuote level1'><br /> А&gt;Написан ActiveX контрол на ATL. Никак не могу подключиться к событию AсtiveX контрола на веб странице. Делаю примерно так:</span><br /> <span class='lineQuote level1'>А&gt;[code]</span><br /> <span class='lineQuote level1'>А&gt;&lt;HTML&gt;</span><br /> <span class='lineQuote level1'>А&gt;&lt;HEAD&gt;</span><br /> <span class='lineQuote level1'>А&gt;&lt;TITLE&gt;ATL 3.0 test page for object MyControl&lt;/TITLE&gt;</span><br /> <span class='lineQuote level1'>А&gt;&lt;/HEAD&gt;</span><br /> <span class='lineQuote level1'>А&gt;&lt;BODY&gt;</span><br /> <span class='lineQuote level1'>А&gt;&lt;SCRIPT language="JavaScript...</span>

Ключевые слова:

Проблемы

Автор: Коваленко Дмитрий
Аннотация: Доброго всем понедельника.<br /> <br /> У меня от тоже добрый. На протяжении последнего времени меня, время от времени, долбило сообщение об AV (чур меня, чур меня) при деинициализации COM-а.<br /> <br /> Вчера меня оно стало уже конкретно напрягать и сегодня, приготовив ведро с вазелином, решил ... багу до смерти.<br /> <br /> ...

Ключевые слова:
Автор: Nick Hodapp
Перевод: Игорь Ткачёв
Источник: CodeGuru::Using ATL to Automate an MFC Application
Аннотация: Download source - 40 KB

Ключевые слова:
Автор: Владислав Чистяков (VladD2)
Источник: RSDN Magazine #4-2004
Аннотация: Рассматривается использование BSTR и указателей на BSTR в качестве параметров COM методов

Ключевые слова: BSTR
Автор: rus blood
Аннотация: Здравствуйте, ssm, Вы писали:<br /> <span class='lineQuote level1'><br /> &gt;насколько правомерным является передача в метод ожидающий BSTR, значения типа LPCWSTR?</span><br /> <br /> Все зависит от наличия маршаллинга. Если компонент загружен inproc и используется "ранее связывание", то, скорее всего, строка будет передана и через LPWSTR. Если же имеется ма...

Ключевые слова:
Автор: Alex Fedotov
Аннотация: <span class='lineQuote level1'>SH&gt;Вопрос №1:</span><br /> <span class='lineQuote level1'>SH&gt;При перечислении всех категорий через IEnumCATEGORYINFO перечисляются несколько категорий (штук десять), после чего очережой вызов Next заканчивается ошибкой E_OUTOFMEMORY. Если попытаться получить все скопом, в массив, то результат тот же, только сразу.</span><br /> <span class='lineQuote level1'><br /> SH&gt;Внимательное изучени...</span>

Ключевые слова:
Автор: Vi2
Аннотация: <span class='lineQuote level1'>А&gt; Есть такой код:</span><br /> <br /> <pre class='c'><code>А&gt; SAFEARRAY * pSa = SafeArrayCreate(VT_BSTR, 1, rgsabound); А&gt;... А&gt; VARIANT var; А&gt;... А&gt; var.vt = VT_ARRAY | VT_BSTR; А&gt; var.parray = pSa; А&gt;... А&gt; SafeArrayDestroy(pSa); А&gt; VariantClear(&amp;var);</code></pre><br /> <span class='lineQuote level1'>А&gt; Феня в том, что после выполнения данного кода прог...</span>

Ключевые слова:
Автор: Vi2
Аннотация: <span class='lineQuote level1'>А&gt;Гуру, подскажите, есть возможность в ActiveX компоненте сделать метод, в который неизвестно, сколько будет передаваться параметров? Или, как вариант, можно в JavaScript создать массив, а потом каким-то образом "скормить" его ActiveX компоненте?</span><br /> <span class='lineQuote level1'><br /> Vi2&gt;Ключевое слово MIDLа <b>[vararg]</b>. Поищи зд...</span>

Ключевые слова:
Автор: Tom
Аннотация: <span class='lineQuote level1'>_&gt;Сейчас читал статью comsec... У меня клиент на вин98 стоит, а сервер на вин2к, доменов нету. Может из-за этого?</span><br /> <br /> Ну так с win98 надо было начинать. Итак список граблей на которые можно наступить при использовании win 9x как DCOM клиента:<br /> <br /> 0. Проверить что у пользователя, указываемого в COSERVE...

Ключевые слова:

C++ Builder и COM

Автор: Odi$$ey
Аннотация: Здравствуйте, Vi2, Вы писали:<br /> <span class='lineQuote level1'><br /> Vi2&gt;Скорее всего CComUnkArray&lt; n &gt;, а не CComDynamicUnkArray. А если и CComDynamicUnkArray, то макрос _DEFAULT_VECTORLENGTH.</span><br /> <br /> вообщем фишка оказалась в следующем &mdash; мастер от VC, когда генерит код использует CComDynamicUnkArray:<br /> <br /> [ccode]<br /> template &lt;class T&gt;<br /> class...

Ключевые слова:
Автор: Sergei
Аннотация: Здравствуйте, Odi$$ey, Вы писали:<br /> <span class='lineQuote level1'><br /> OE&gt;Здравствуйте, &lt;Аноним&gt;, Вы писали:</span><br /> <span class='lineQuote level2'><br /> А&gt;&gt;Этот самый GUI использует COM объект с методом, в который </span><br /> <span class='lineQuote level2'>А&gt;&gt;передается другой COM объект ([in] параметр)</span><br /> <span class='lineQuote level2'>А&gt;&gt;Так вот бормановские врапперы похоже вызывают на один Release</span><br /> <span class='lineQuote level2'>А&gt;&gt;меньше, чем положено и в итоге имею кучу...</span>

Ключевые слова:

COM и Scripting

Источник: «Технология Клиент-Сервер»
Аннотация: Главными целями разработки СОМ были создание распределенной компонентной архитектуры, взаимодействие компонентов во время исполнения, поддержка автоматизации приложений и совместимость со скриптовыми языками. СОМ старается быть настолько терпимым к языку, насколько это возможно, и теперь вы можете и...

Ключевые слова:
Автор: Odi$$ey
Аннотация: <span class='lineQuote level1'>OE&gt;Написал JavaScript, оформил как COM объект, как описано в <a class=" tips m" href="https://rsdn.org/article/com/wscript/COM.xml" rel="#eTkvEY" title="Создание COM-компонентов с помощью скриптовых языков">Создании COM-компонентов с помощью скриптовых языков<div class="tooltip" id="eTkvEY">Автор(ы): <br />Дата: 25.04.2001<br /></div></a>, зарегистрировал (успешно, проверил в OleView), создал для него tlb (тоже видна в OleView). </span><br /> <span class='lineQuote level1'>OE&gt;Теперь хочу попользовать.</span><br /> <span class='lineQuote level1'>OE&gt;В...</span>

Ключевые слова:
Автор: Vi2
Аннотация: Здравствуйте, Shire, Вы писали:<br /> <br /> [q]<br /> <span class='lineQuote level1'>S&gt;Вот тут мучил контрол <b>MSWinsock.Winsock</b> (поставляется с <b>VB Ent. Edition</b>) из <b>JScript</b> (<b>WSH</b>).</span><br /> <span class='lineQuote level1'>S&gt;У него есть методы <b>GetData</b> и <b>PeekData</b>, которые принимают ссылку на <b>VARIANT</b>.</span><br /> [code]<br /> <span class='lineQuote level1'>S&gt;HRESULT xxxData([b][in, out]...</span>

Ключевые слова:
Автор: Odi$$ey
Аннотация: <span class='lineQuote level1'>А&gt;хочу из Java Script в свой COM передавать данные через SAFEARRAY.</span><br /> <span class='lineQuote level1'><br /> А&gt;данные буду передавать следующие:</span><br /> <span class='lineQuote level1'>А&gt;числа (пример: 1, 34, 765)</span><br /> <span class='lineQuote level1'>А&gt;строки (пример: "asd", "a", "dj35")</span><br /> <br /> если проблема в том что неизвестно заранее число параметров и их тип, то так:<br /> <br /> [midl]<br /> [id(1), helpstring("Метод с пере...

Ключевые слова:
Автор: Vi2
Аннотация: Здравствуйте, Аноним, Вы писали:<br /> <span class='lineQuote level1'><br /> А&gt;переделал недавно СОМ-сервер &mdash; сделал вместо одного интерфейса с кучей функций несколько небольших интерфейсов (по функциональности). Объявление теперь выглядит примерно так:</span><br /> <span class='lineQuote level1'>А&gt;...</span><br /> <span class='lineQuote level1'>А&gt;все работает и даже работает в макросах в офисе, НО когда я пытаюсь вызвать F...</span>

Ключевые слова:
Авторы: Алексей Кирюшкин
Andrew Merkushev
Аннотация: Как получать COM-бытия в скриптах

Ключевые слова: VBScript, JScript, events, WithEvents
Автор: AndrewJD
Аннотация: Здравствуйте, Аноним, Вы писали:<br /> <span class='lineQuote level1'><br /> А&gt;Написан ActiveX контрол на ATL. Никак не могу подключиться к событию AсtiveX контрола на веб странице. Делаю примерно так:</span><br /> <span class='lineQuote level1'>А&gt;[code]</span><br /> <span class='lineQuote level1'>А&gt;&lt;HTML&gt;</span><br /> <span class='lineQuote level1'>А&gt;&lt;HEAD&gt;</span><br /> <span class='lineQuote level1'>А&gt;&lt;TITLE&gt;ATL 3.0 test page for object MyControl&lt;/TITLE&gt;</span><br /> <span class='lineQuote level1'>А&gt;&lt;/HEAD&gt;</span><br /> <span class='lineQuote level1'>А&gt;&lt;BODY&gt;</span><br /> <span class='lineQuote level1'>А&gt;&lt;SCRIPT language="JavaScript...</span>

Ключевые слова: