Форум: "Основная";
Текущий архив: 2002.02.07;
Скачать: [xml.tar.bz2];
ВнизКто-нибудь занимался интерфейсами на Дельфи? Найти похожие ветки
← →
Владимир Васильев (2002-01-18 11:05) [24]Если ВСЁ ОЧЕНЬ УПРОСТИТЬ то когда вы работаете с "чужими" интерфейсами - то вы их скорее не "создаёте" - точнее будет сказать вы их их получаете :
(хотя в справке конечно вы прочтёте напр. : "Creates a single uninitialized object ... ").
Напр, для работы с WinMediaPlayer вам,сначала, нужно получить у COM сервера интерфейс IGraphBuilder
Объявляем
GB : IGraphBuilder
Проверяем, а поддерживается ли наш интерфейс есди да то GB содержит ссылку на него
hr:=CoCreateInstance(CLSID_FilterGraph, nil, CLSCTX_INPROC, IID_IGraphBuilder, GB);
if (FAILED(hr)) then
begin
messagebox(self.Handle,pchar(geterror(hr)),"Error",MB_OK);
end;
И далее уже получаем другие нужные интерфейсы используя полученный ранее GB
MC : IMediaControl
hr := GB.QueryInterface(IID_IMediaControl, MC) ;
if failed(hr) then ...
Вернёмся к IE. Вам необходимо импортировать две библиотеки типов:
Type Lib: C:\WINNT\System32\shdocvw.dll
Type Lib: C:\WINNT\System32\mshtml.tlb //IHTMLDocument2 описан здесь
Ваши шаги (предварительно прочтите хелп на команды меню)
Из Delphi:
1 : Component->Import ActiveX Control
2 : Project-> Import Type Library
Практическая работа с интерфейсами лучше всего описана
у Чарльза Калверта в его замечательных книгах Delphi UnLeashed 2
(Direct X ) и Delphi UnLeashed 4 (IE, Word, Excel ). Они, конечно, дорогие - но это лучшее, что есть в продаже.
Удачи.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.02.07;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.006 c