alex_rain
1

Обработчик для функции OLE-объекта

19.07.2010, 05:30. Показов 3028. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Для работы с OPC-серверами в Delphi использовал импорт библиотеки типов
(для OPC DA - OPCDAAuto.dll и gbda_aut.dll) - весьма успешно.
Сейчас почти полностью перешел на Lazarus, в котором нет поддержки
импорта библиотеки типов.
Для того, чтобы обратиться к OPCDAAuto.dll использую OLE-объект.
Пример синхронного чтения данных:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
var
  opcServer, opcGroup, opcItem1: variant;
  isConnected: boolean = False;
procedure TForm1.Button1Click(Sender: TObject);
begin
  if not isConnected then
  begin
    try
      opcServer := CreateOleObject('OPC.Automation');
      opcServer.Connect('Advantech.ADAM.1');
      opcGroup := opcServer.OPCGroups.Add('TestGroup');
      opcItem1 := opcGroup.OPCItems.AddItem('Simulation.Group1.Tag1', 1);
      isConnected := True;
      Label1.Caption := 'Connected';
    except
      on E: Exception do
        ShowMessage(E.ClassName + ': ' + UTF8Encode(E.Message));
    end;
  end;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
  if isConnected then
  begin
    try
      opcItem1.Read(1);
      Label2.Caption := VarToStr(opcItem1.Value);
    except
      on E: Exception do
        ShowMessage(E.ClassName + ': ' + UTF8Encode(E.Message));
    end;
  end;
end;
Этот код будет работать и в Delphi (конечно, без UTF8Encode).
Однако, не могу понять, как делать асинхронное чтение через созданный OLE-объект.
Необходимо обрабатывать событие DataChange из DIOPCGroupEvent, но как это сделать в OLE?

В общем, вопрос следующий:
Как создать в Delphi обработчик события OLE-объекта, полученного с помощью CreateOleObject?
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
19.07.2010, 05:30
Ответы с готовыми решениями:

Обработчик события для объекта
Направьте в нужное русло, пожалуйста)) есть на странице "персонаж" - кубик на основе div. Для...

Почему закрывается окно объекта OLE при открытии другого объекта?
Добрый день! Есть таблица, одно из полей которой - Поле объекта OLE. При двойном нажатии...

Обработчик события для объекта, созданного программно
Здравствуйте. В форме программно создано кнопочное поле. Cреда Visual Studio 2010. (в файле...

При возврате объекта из функции пишет, что для объекта не определен констуктор копирования
Пишу шаблонный класс матриц. Делаю, значит, переопределение оператора + для двух матриц одного...

0
19.07.2010, 05:30
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.07.2010, 05:30
Помогаю со студенческими работами здесь

ООП. Как в классе сделать обработчик события для тэга в виде метода будущего объекта?
Здравствуйте. Помогите разобрться. Я в PHP вывожу в цикле однотипные группы тэгов, к каждой...

Что-то типа OLE- объекта для вставки с помощью АСПа например файл *.rtf или *.doc в ASP-файл
Реально надо заделать что-то типа OLE- объекта для вставки с помощью АСПа например файл *.rtf или...

Присоединение OLE объекта
Здравствуйте. Разобрался с присоединением Ole объекта - спасибо. Но есть новый вопрос....

Поле объекта OLE
Добрый вечер! Уже задавал вопрос, но у меня ничего не получилось. Как сделать так, чтобы в форме...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

Новые блоги и статьи
Введение в модели и алгоритмы машинного обучения
InfoMaster 12.01.2025
Машинное обучение представляет собой одну из наиболее динамично развивающихся областей искусственного интеллекта, которая фокусируется на разработке алгоритмов и методов, позволяющих компьютерам. . .
Как на Python создать нейросеть для решения задач
InfoMaster 12.01.2025
В контексте стремительного развития современных технологий особое внимание уделяется таким инструментам, как нейросети. Эти структуры, вдохновленные биологическими нейронными сетями, используются для. . .
Как создать нейросеть для генерации картинок на Python
InfoMaster 12.01.2025
Генерация изображений с помощью искусственных нейронных сетей стала одним из наиболее захватывающих направлений в области компьютерного зрения и машинного обучения. В этой статье мы рассмотрим. . .
Создание нейросети для генерации текста на Python
InfoMaster 12.01.2025
Нейросети, или искусственные нейронные сети, представляют собой модели машинного обучения, вдохновленные работой человеческого мозга. Они состоят из множества взаимосвязанных узлов, или "нейронов",. . .
Как создать нейросеть распознавания изображений на Python
InfoMaster 12.01.2025
Введение в распознавание изображений с помощью нейросетей Распознавание изображений с помощью нейронных сетей стало одним из самых впечатляющих достижений в области искусственного интеллекта. Эта. . .
Основы искуственного интеллекта
InfoMaster 12.01.2025
Искусственный интеллект (ИИ) представляет собой одну из наиболее динамично развивающихся областей современной науки и технологий. В широком смысле под искусственным интеллектом понимается способность. . .
Python и нейросети
InfoMaster 12.01.2025
Искусственные нейронные сети стали неотъемлемой частью современных технологий, революционизировав множество областей - от медицинской диагностики до автономных транспортных средств. Python, благодаря. . .
Python в машинном обучении
InfoMaster 12.01.2025
Python стал неотъемлемой частью современного машинного обучения, завоевав позицию ведущего языка программирования в этой области. Его популярность обусловлена несколькими ключевыми факторами, которые. . .
Создание UI на Python с TKinter
InfoMaster 12.01.2025
TKinter — это одна из наиболее популярных библиотек для создания графических интерфейсов пользователей (GUI) в языке программирования Python. TKinter входит в стандартную библиотеку Python, что. . .
HTML5 в разработке мобильных приложений
InfoMaster 12.01.2025
Введение: Обзор роли HTML5 в мобильной разработке В современном мире мобильных технологий HTML5 стал ключевым инструментом для разработки кроссплатформенных приложений. Эта технология произвела. . .
Как создавать приложения для iOS/iPhone
InfoMaster 12.01.2025
Введение в разработку iOS-приложений Разработка приложений для iOS открывает огромные возможности в мире мобильных технологий. С каждым годом количество пользователей iPhone и iPad растет,. . .
Как использовать Kotlin в Android разработке
InfoMaster 12.01.2025
Язык программирования Kotlin, разработанный компанией JetBrains, стал неотъемлемой частью современного мира Android-разработки. Первоначально представленный в 2011 году, Kotlin был официально. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru