powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как работать с IOPCHDA_Server из проекта opcdelphi
4 сообщений из 79, страница 4 из 4
Как работать с IOPCHDA_Server из проекта opcdelphi
    #37635681
for_kav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
GrozaUmnikam aka tarasdjfor_kav,
Вылетает на эту строку.

Код: pascal
1.
ppItemValuesItem:=ppItemValues^[0];



ОРС : PCS7.OPCHDAServer.1

А GUID смотреть в реестре?
из-за того что значение ppItemValues = nil
...
Рейтинг: 0 / 0
Как работать с IOPCHDA_Server из проекта opcdelphi
    #37637211
for_kav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
GrozaUmnikam aka tarasdjfor_kavGrozaUmnikam aka tarasdj,
а в стандарте 1.2 есть пункт Revision 1.2 Highlights, там есть изменения некоторые.


Какие изменения? Можете показать?
ну тут я думаю не стоит выкладывать, проще скачать документацию по версии ОРС HDA 1.2
хотя бы с сайта graybox, у той которая библиотечка есть бесплатная, с ней же и дёт и описалово.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Как работать с IOPCHDA_Server из проекта opcdelphi
    #39514023
voron12005
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В случае с OPC HDA необходимо чистить память по завершению, иначе будет утечка.
...
Рейтинг: 0 / 0
Как работать с IOPCHDA_Server из проекта opcdelphi
    #39514028
voron12005
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Еле нашел, пусть будет здесь на форуме. Утечка памяти при запросе OPC HDA в цикле.
Если есть текстовые теги то память нужно чистить дополнительно функцией VariantClear
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
for j:= 0 to iCount-1 do
    begin
        dwiCount:=aItemValues^[j].dwCount;
        for I := 0 to dwiCount - 1 do
          begin
            VariantClear(POleVariantArray(aItemValues^[j].pvDataValues)[i]);
            SysFreeString(StringToOleStr(VarToStr(word(PDWORDARRAY(aItemValues^[j].pdwQualities)[i]))));
          end;

      CoTaskMemFree(aItemValues[j].pdwQualities);
      CoTaskMemFree(aItemValues[j].pftTimeStamps);
      CoTaskMemFree(aItemValues[j].pvDataValues);
    end;
  CoTaskMemFree(aItemValues);

  CoTaskMemFree(pphServer);
  CoTaskMemFree(ppErrors);
...
Рейтинг: 0 / 0
4 сообщений из 79, страница 4 из 4
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как работать с IOPCHDA_Server из проекта opcdelphi
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]