Страница 1 из 1

VIP Не находит ExtractDelimitedWord

Добавлено: 28 янв 2010, 14:59
niteo
Добрый день уважаемые, есть проблема с использованием функции ExtractDelimitedWord. VIP отказывается ее видеть. Хотя в файле конфигураций указываю на ресурс ExtFun.res.
Вот что именно говорит компилятор:
Ошибка: Нет такой функции, поля или метода : EXTRACTDELIMITEDWORD (стр.780, поз.47 в ....


Вот так вот подключаю рессурс:
VIP.cfg
[System]
EditorFileMask=*.*
OpenResources=D:\GALAXY\gal810\exe\Extfun.res
OpenResources=D:\GALAXY\gal810\exe\F_PoDot.res


Вот такой строчкой собираю:
%ApiExePath%\vip.exe OOTiZ.prj /R:user.res /c:vip.cfg

Подскажите, вчем может быть ошибка....

Добавлено: 28 янв 2010, 15:24
KATZ
Вроде всё правильно написано. В вашем проекте случайно нет докомпилируемых интерфейсов? А то однажды сталкивался с таким явлением. Где-то в середине проекта была докомпиляция интерфейса, а после него шла компиляция какой-то FRM-ки, так VIP точно так же ругался на функцию String в FRM-ке! Перенес всю докомпиляцию в конец проекта - заработало!

Добавлено: 28 янв 2010, 15:43
galover
помнится какая-то кривая реализация была у той функции, написали свою

Код: Выделить всё

   private function GetGroupSubStr(str : string; grNum : byte; delim : string) : string;
   {
      result := '';

      var curGrNum : byte; // Текуший блок
      var delimPos : byte; // Позиция разделителя

      for (curGrNum := 1; curGrNum <= grNum; curGrNum++)
      {
         delimPos := InStr(delim, str);

         if (curGrNum = grNum) // Нашли нужную группу
         {
            result := if(delimPos > 0, SubStr(str, 1, delimPos - 1), str);
            exit;
         }
         else if (delimPos = 0)
            exit;

         str := SubStr(str, delimPos + 1, Length(str) - delimPos);
      }
   }

Добавлено: 08 фев 2010, 12:26
niteo
Вообщем даже как то стыдно сознаваться, тут с установкой, голова кругом идет, еще и отчет время от времени делаю. Вот и получилось.... Банально, неправильный путь :-]~