На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! ПРАВИЛА РАЗДЕЛА · FAQ раздела Delphi · Книги по Delphi
Пожалуйста, выделяйте текст программы тегом [сode=pas] ... [/сode]. Для этого используйте кнопку [code=pas] в форме ответа или комбобокс, если нужно вставить код на языке, отличном от Дельфи/Паскаля.
Следующие вопросы задаются очень часто, подробно разобраны в FAQ и, поэтому, будут безжалостно удаляться:
1. Преобразовать переменную типа String в тип PChar (PAnsiChar)
2. Как "свернуть" программу в трей.
3. Как "скрыться" от Ctrl + Alt + Del (заблокировать их и т.п.)
4. Как прочитать список файлов, поддиректорий в директории?
5. Как запустить программу/файл?
... (продолжение следует) ...

Вопросы, подробно описанные во встроенной справочной системе Delphi, не несут полезной тематической нагрузки, поэтому будут удаляться.
Запрещается создавать темы с просьбой выполнить какую-то работу за автора темы. Форум является средством общения и общего поиска решения. Вашу работу за Вас никто выполнять не будет.


Внимание
Попытки открытия обсуждений реализации вредоносного ПО, включая различные интерпретации спам-ботов, наказывается предупреждением на 30 дней.
Повторная попытка - 60 дней. Последующие попытки бан.
Мат в разделе - бан на три месяца...
Модераторы: jack128, D[u]fa, Shaggy, Rouse_
  
> OPC Server
    Добрый день!
    скачал пример OPC Server. Скачал софт OPC Matricon. в нем я вижу свой сервер, могу к нему подключится и получать данные клиентом Matricon Explorer
    Единственное где я получаю ошибку это вызов названий транслируемых тегов. если прописать название тегов ручками в Matricon Explorer, то данные идут.
    помогите пожалуйста разобраться с ошибкой.

    скрин ошибки: https://yadi.sk/d/GMBUUv0Q3JNLwY
    Исходник: https://yadi.sk/d/Fr0GDODq3JNLyg
    ExpandedWrap disabled
      type
        TOPCStringsEnumerator = class(TComObject, IEnumString)
        private
          nextIndex:Integer;
          strList:TStringList;
        public
          constructor Create(const inStrings: TStringList);
          destructor Destroy;override;
       
         function Next(celt: Longint; out elt; pceltFetched: PLongint): HResult; stdcall;
      //функция  //функция //функция  //функция //функция  //функция
       
       
          function Skip(celt: Longint): HResult; stdcall;
          function Reset: HResult; stdcall;
          function Clone(out enm: IEnumString): HResult; stdcall;
        end;
       
       
      function TOPCStringsEnumerator.Next(celt: Longint; out elt; pceltFetched: PLongint): HResult;
      var
       i: integer;
      begin
       i:=0;
       if celt < 1 then
        begin
         Result:=RPC_X_ENUM_VALUE_OUT_OF_RANGE;
         Exit;
        end;
       if pceltFetched = nil then
        begin
         Result:=E_INVALIDARG;
         Exit;
        end;
       
       Result := S_FALSE;
       while (i < celt) do
        begin
         if (nextIndex < strList.Count) then
          begin
           TPointerList(elt)[i]:=StringToLPOLESTR(strList[nextIndex]);
           Inc(i);
           Inc(nextIndex);
          end
         else
          begin
           Result:=RPC_X_ENUM_VALUE_OUT_OF_RANGE;
           Break;
          end;
        end;
    Сообщение отредактировано: Emmys -
      только что заметил что в Delphi XE работает,а в Delphi 10.2 нет

      в Delphi XE: TPointerList = array[0..MaxListSize - 1] of Pointer;
      в Delphi 10.2: TPointerList = array of Pointer;

      может кто подскажет как поправить?
      Сообщение отредактировано: Emmys -
        Если не править исходник модуля, то просто отключить в свойствах проекта Range checking.
        Или же заменить в исходнике TPointerList на PointerArray
        Сообщение отредактировано: leo -
          Огромнейшее спасибо. несколько дней разбирался до этого безрезультатно.
          0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
          0 пользователей:


          Рейтинг@Mail.ru
          [ Script execution time: 0,0298 ]   [ 16 queries used ]   [ Generated: 28.03.24, 23:32 GMT ]