Недавно добавленные исходники

•  TDictionary Custom Sort  537

•  Fast Watermark Sources  902

•  3D Designer  1 830

•  Sik Screen Capture  1 477

•  Patch Maker  1 485

•  Айболит (remote control)  1 409

•  ListBox Drag & Drop  1 176

•  Доска для игры Реверси  21 917

•  Графические эффекты  1 357

•  Рисование по маске  1 296

•  Перетаскивание изображений  1 096

•  Canvas Drawing  971

•  Рисование Луны  814

•  Поворот изображения  771

•  Рисование стержней  815

•  Paint on Shape  493

•  Генератор кроссвордов  762

•  Головоломка Paletto  667

•  Теорема Монжа об окружностях  855

•  Пазл Numbrix  619

•  Заборы и коммивояжеры  849

•  Игра HIP  557

•  Игра Go (Го)  527

•  Симулятор лифта  549

•  Программа укладки плитки  509

•  Генератор лабиринта  565

•  Проверка числового ввода  524

•  HEX View  600

•  Физический маятник  528

•  Задача коммивояжера  560

 
скрыть


Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Интерфейс OLE AutoServer



Автор: Anders Hejlsberg

Это не улыбка, а дружественный интерфейс.

Я пытаюсь создать in-process oleserver с возможностью обратного вызова (callback). Я хочу передавать мой ole-объект MS C++ dll так, чтобы DLL могла бы вызываться из сервера. Проблема в том, что dll "вылетает", если мой сервер - Delphi 2.0, но работает в VB 4.0

Проблема в том, что вы передаете со стороны Delphi Variant, но на стороне C++ "ожидают" IUnknown. Измените прототип функции Delphi следующим образом:


function SmtOleLink(OleCallBack: IUnknown; ...) ...;

Для получения доступа к типу IUnknown необходимо добавить "Ole2" к списку используемых модулей. Теперь измените вызов со стороны Delphi:


SmtOleLink(VarToInterface(MyObject), 16, 0);

Функция "VarToInterface" (определенная в модуле OleAuto) извлекает указатель IDispatch из Variant (или возбуждает исключение, если Variant не содержит ссылки на объект OLE Automation).

Это должно сработать.





Похожие по теме исходники

Win Console

Molecula (3D молекула)

Molecule (молекула)

Console FTP

 

CMD OLE

DeParole

Console SmartEngine

Close Console on Event

 

Console Task Manager




Copyright © 2004-2022 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте   Facebook   Ссылка на Twitter   Ссылка на Telegram