Ошибка получения данных

Автор Vitek, 08.06.08, 12:38:55

« предыдущая - следующая »

0 Пользователей и 1 гость просматривают эту тему.

Vitek

В значении линейного размера записана строка  "#vs_c1#@1"

Получаю строку следующим образом

Procedure LDIM_edit(_obj:reference);   
label m1;
var linPar :LDimParam; par2 : TextLineParam ; par3 : TextItemParam ; j,i: Integer;
begin
  linPar.tPar.stringFlag := 1;
  GetObjParam( _obj, Addr(linPar), SizeOf(linPar), ALLPARAM );

  count := GetArrayCount(linPar.tPar.pText);
  for  i:=0 to count-1 do begin
    GetArrayItem( linPar.tPar.pText , i, Addr(par2), sizeof(TextLineParam) );
    count1 := GetArrayCount( par2.pTextItem );

    for j:=0 to count1-1 do begin
      GetArrayItem( par2.pTextItem, j, Addr(par3), SizeOf(TextItemParam));
      qwr := par3.s;

    ...

В версиях Компаса 7+, 8, 8+ получаю значение переменной "qwr" равной "#vs_c1#@1"
Начиная с 9-й версии Компаса и в 10-й вместо "#vs_c1#@1" переменная получает "#vs_c1#@@1"

Может быть это глюк кода Компаса 9,10 или нада по другому получать значение линейного размера?
Если символ "@" не используется глюков не возникает.

Vitek

неужели никто не может помочь?