| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Описалово OLE Server-ov. |
| Автор: Алекс С. 20.8.2002, 21:13 |
| Раз уж пошла такая пьянка, и народ вовсю спрашивает про СОМ, то и мне хотелось бы встрять здесь с вопросом, который уже долго меня мучает. А именно: есть ли где толковое описание (рус./англ.) OLE серверов Microsoft Office для Дельфи? Все там методы, свойства, примерчики с использованием объектов. Желательно чтобы всё было основано на CreateOleObject, а не объектов на закладке Servers, но и они сойдут на худой конец. Есть ли такое чтиво в природе, если да, то посоветуйте, пожалуйста, где можно достать (лучше скачать). Заранее спасибо! |
| Автор: Fantasist 21.8.2002, 11:13 |
| Большинство из них, ты можешь почерпнуть из хелпа по VBA к соответсвующим продуктам. И нельзя сказать что для Делфи, они для всех языков одни и те же. Да. И в конце концов в MSDN должны быть. |
| Автор: Dapo 21.8.2002, 12:17 |
| Ну раз уж пьянка пошла, тогда советую изучать эти ОЛЕ сервера через TLB (библиотеки типов). Для этого: Project-->Import Type Library --> дальше, из списка зарегистрированных оле-серверов выбираешь нужный тебе. Ниже появится список компонентов описание которых этот юнит содержит. Если эти компоненты в твоем VCL уже есть, то сними флажок Generate Component Wrapper (если такого компонента нету, то все равно можешь снять флажок). Потом жми на Create unit. И у тебя получиться 2 файла (ххххххххх_TLB.pas и ххххххххх.tlb (собственно сама библиотека)). Потом берешь этот PAS, включаешь в uses, открываешь и смотришь его. Там будут описания всех интерфейсов и их методов. Смотри, пользуйся и без компонентов. Например, есть у тебя группа компонентов на вкладке Servers от носящихся к Word-у. Находишь сервер (зависити от версии, у меня Microsoft Word 9.0 Object Library (version 8.1))? создаешь TLB и вперед! ...... uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls,Word_TLB; ...... procedure TForm1.Button1Click(Sender: TObject); var MyWrd:_Application; begin MyWrd:=CoWordApplication.Create; MyWrd.Visible:=true; end; Кстати, TLB создаются не только для "OLE". Уже сам майкрософт не делает принципиального различия между ОЛЕ, COM|DCOM, ActiveX. |
| Автор: Fantasist 21.8.2002, 15:30 | ||||
Эх, ну а почему тогда не через компоненты на вкладке Servers? Через библиотеки не так удобно. А хелпа там вообще нет.
Библиотки типов создаются для COM объектов. COM же это скорее стандарт - базовая инфраструктура, на которой строятся такие технологии как OLE, Automatation, OCX и т.п. ActiveX, сейчас насколько я понял, называют внутрипроцессорные COM объекты. OLE вроде как оставляет за собой право быть технологией составных документов (то есть встраевымых (и не знаю как насчет подключаемых) объектов) |
| Автор: Dapo 21.8.2002, 20:00 | ||||
А потому, что во вкладке Servers перечислены далеко не все существующие сервера (как говорится - зри в корень). Word был просто как пример. |
| Автор: Fantasist 22.8.2002, 02:14 |
| Вообще-то компоненты на закладке Servers построены имено на импорте библиотек типов + компоненты-враперы. То есть накладные расходы могут быть только из-за использования компонент, в принципе, они не должны быть очень большими. |
| Автор: Igel 29.8.2002, 18:44 |
| У меня возникла не просто проблема, а глобальное непонимание... Я сделал из TLB-файла модуль... как дальше работать с объектами (интерфейсами) не знаю!! Просвятите!! Может инфа или ссылки у кого есть... |
| Автор: Vit 29.8.2002, 23:29 | ||
http://www.forum.vingrad.ru/cgi-bin/newforum/ikonboard.cgi?act=ST;f=2;t=167 |
| Автор: Алекс С. 30.8.2002, 19:02 |
| Вообще я лошок ленивый, сознаюсь откровенно и готов посыпать голову пеплом -- просто поленился в гугле поискать требуемое. Так что вот несколько очень содержательных ресурсов, на которые я напоролся. Надеюсь поможет всем заинтересованным, т.к. рассчитано на начинающих, но есть и "пикантные" детали. Вот... http://community.borland.com/article/0,1410,10126,00.html http://www.slo.ru/programming/del_excel.htm http://www.delphikingdom.com/helloworld/excel.htm http://www.delphikingdom.com/helloworld/excel2.htm http://www.delphikingdom.com/helloworld/excel3.htm http://vzone.virgin.net/graham.marshall/excel.htm http://www.djpate.freeserve.co.uk/AutoExcl.htm http://community.borland.com/article/0,1410,10043,00.html Если кто нашёл ещё что-нибудь интересное по теме, большая просьба тоже поделиться! |