Вниз
Скачать: CL | DM;

BPL и ошибки компиляции.   Найти похожие ветки 

← →
Drowsy   (2009-11-29 13:40) [0]

Нашёл в инете полезный компонент с демо-примером и попробовал установить их. Опцию Build with runtime pakages отключил.
Запускаю пример на выполнение - всё работает, а если делаю Project build, то сыпятся ошибки компиляции, типа "There is no overloaded version of "Error" that can be called with these arguments"
Почему программа исполняется, если компилция не проходит?


← →
Anatoly Podgoretsky ©   (2009-11-29 13:46) [1]

> Drowsy  (29.11.2009 13:40:00)  [0]

Предварительно удали ехе


← →
Drowsy   (2009-11-29 14:21) [2]

Да, точно, новый екзешник не создаётся.

А почему возникает ошибка
"There is no overloaded version of "Error" that can be called with these arguments"

function TGraphObject.GetRealKoord(Index: Integer): TFloatPoint;
begin
 // 0 - левый верхний угол
 // 1 - правый верхний угол
 // 2 - правый нижний угол
 // 3 - левый нижний угол
 case Index of
   0: Result := BasePoints[0];
   1:
     begin
       Result.X := BasePoints[1].X;
       Result.Y := BasePoints[0].Y;
     end;
   2: Result := BasePoints[1];
   3:
     begin
       Result.X := BasePoints[0].X;
       Result.Y := BasePoints[1].Y;
     end;
   else
     TList.Error(@SListIndexError, Index); // здесь ошибка.
 end;
end;

Метод TList.Error определён в Classes.pas :

class procedure TList.Error(const Msg: string; Data: Integer);

 function ReturnAddr: Pointer;
 asm
         MOV     EAX,[EBP+4]
 end;

begin
 raise EListError.CreateFmt(Msg, [Data]) at ReturnAddr;
end;

class procedure TList.Error(Msg: PResStringRec; Data: Integer);
begin
 TList.Error(LoadResString(Msg), Data);
end;

А в модуле RTLConsts :

 SListIndexError = "List index out of bounds (%d)";


← →
Игорь Шевченко ©   (2009-11-29 15:02) [3]


>      TList.Error(@SListIndexError, Index); // здесь ошибка.


uses в студию


← →
Drowsy   (2009-11-29 15:12) [4]

////////////////////
unit MyGraphObjects;
////////////////////
interface

uses SysUtils, Classes, ProTypes;
.......
.......

implementation

uses Messages, Math, RTLConsts;
.........
........

end.

////////////////////
unit ProTypes;
////////////////////

interface

uses Windows, SysUtils, Graphics;
.........
........
implementation

uses Types;
.........
........

end.


← →
Игорь Шевченко ©   (2009-11-29 15:50) [5]

Drowsy   (29.11.09 15:12) [4]

Не хочешь сам себе помочь - тебе никто не поможет. Партизан фигов.


← →
Drowsy   (2009-11-29 16:04) [6]


> Игорь Шевченко ©   (29.11.09 15:02) [3]


> uses в студию


Я же указал все uses.

> Drowsy   (29.11.09 15:12) [4]


← →
Drowsy   (2009-11-29 16:46) [7]

Снял опцию компилятора : Typed @ operator  
Теперь билдится без ошибок.


← →
Drowsy   (2009-11-29 16:52) [8]

{$T-}
function TGraphObject.GetRealKoord(Index: Integer): TFloatPoint;
begin
case Index of
  0: Result := BasePoints[0];
  1:
    begin
      Result.X := BasePoints[1].X;
      Result.Y := BasePoints[0].Y;
    end;
  2: Result := BasePoints[1];
  3:
    begin
      Result.X := BasePoints[0].X;
      Result.Y := BasePoints[1].Y;
    end;
  else
    TList.Error(@SListIndexError, Index);
end;
end;
{$T+}



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.007 c
15-1258112660
TUser
2009-11-13 14:44
2010.01.17
Скончался Виталий Лазаревич Гинзбург


2-1258818660
Wito
2009-11-21 18:51
2010.01.17
Рекурсивный обход дерева


15-1258203058
TRSteep
2009-11-14 15:50
2010.01.17
Сетевея работа


15-1258147816
Юрий
2009-11-14 00:30
2010.01.17
С днем рождения ! 14 ноября 2009 суббота


2-1258556612
niro
2009-11-18 18:03
2010.01.17
перехватить событие от msie




   Наверх