Советы по Delphi. Версия 1.4.3 от 1.1.2001
Шрифт:
Так для чего нам Unit1, создающий реализацию интерфейса? Интерфейс Ole, такой как, например, IFontDisp, может считаться соглашением о том, что свойства и функции будут определены в заданном формате, а функции будут реализованы как определено (для получения дополнительной информации смотри Руководство Разработчика, главу 36, «An Overview of COM» (Обзор COM). Тот факт, что интерфейс определен, не означает, что он реализован. Например, чтобы заставить определенный вами интерфейс IFontDisp быть полезным, необходимо обеспечить хранение шрифта и механизм добавления и извлечения информации об атрибутах шрифта, таких, как имя шрифта, наклонное начертание, размер
Примечание:
GetOleFont и SetOleFont определены в AxCtrls.pas. IFontDisp определен в ActiveX.pas
Использование CHARTFX.VBX
Delphi 1
Хотя это можно было бы пообсуждать и здесь, но для ChartFX существует контекстно-зависимая подсказка. Киньте компонент на форму, выберите его и нажмите F1.
VBX в приложениях DELPHI: как распространять?
Delphi 1
Чтобы использовать любые элементы управления VBX с компилированным Delphi EXE-файлом, вам необходимо распространить BIVBX11.DLL (расположен в каталоге \WINDOWS\SYSTEM – Borland при установке копирует его туда).
Расскажите, как использовать ChartFX?
Nomadic советует:
Лyчше на простеньком примере.
Как осуществить минимальный тест на корректность глобального идентификатора (GUID), и интерфейсов, унаследованных от IDispatch?
Как осуществить минимальный тест на корректность глобального идентификатора (GUID), и интерфейсов, унаследованных от IDispatch (и, следовательно, поддерживающих методы автоматизации)?
Nomadic советует:
Вызовите CreateRemoteComObject, передав GUID интерфейса и имя компьютера, к которому Вы пытаетесь
подключиться. Если функция вернет ошибку, то наличествует проблема сервера, иначе возможная проблема относится к клиенту.Если этот кусок кода работает, а проблема остается, то Вам требуется шаг за шагом пройти через код клиента и найти, где он дает трещину. Если не сможете этого обнаружить, Вам придется запустить сервер под отладчиком и установить связь с клиентом, чтобы Вы могли произвести отладку рядом со местом, дающем слабину.
DCOM
В чем разница между сокетами, DCOM и OLE Enterprise при использовании их в качестве транспорта?
Nomadic отвечает:
Sockets (TCP/IP):
• на клиентах и сервере требуется наличие стека TCP/IP;
• не требуется дополнительной настройки клиентов;
DCOM:
• на клиентах и серверах требуется наличие DCOM (входит в состав Windows NT 4.0, для Windows 95 доступен как опция)
• требуется настройка клиентов (DCOM Configuration Utility — DCOMCNFG.EXE);
• встроенная поддержка модели безопасности Windows NT;
• поддержка обратных вызовов (методов);
CORBA
• на клиентах и серверах требуется наличие Common Object Request Broker;
• требуется настройка клиентов;
• поддержка обратных вызовов (методов);
OLE Enterprise:
• на клиентах и серверах требуется наличие OLE Enterprise;
• требуется настройка клиентов;
• поддержка обратных вызовов (методов);
DDE
DDE – передача текста
Delphi 1
Вот я как работаю с Excel:
Как вы можете здесь видеть, свойство DDEItem определяется сервером. Если ваш сервер является приложением Delphi, то DDEItem – имя DDEServerItem. На вашем месте я бы не стал так долго заниматься отладкой DDE-программ. Воспользуйтесь синхронизацией, позволяющей понять при отладке правильность действий.