Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.01.17;
Скачать: 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 вся ветка

Текущий архив: 2010.01.17;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.009 c
11-1210479486
Valera
2008-05-11 08:18
2010.01.17
Как загрузить иконку в Bitmap.


15-1258409121
Германн
2009-11-17 01:05
2010.01.17
Клиент ДМ


2-1259247302
recop
2009-11-26 17:55
2010.01.17
Удаление узла TreeView по абсолютному индексу


15-1257802926
DVM
2009-11-10 00:42
2010.01.17
Забавный ролик с Гейтсом и Балмером


2-1259073318
Serov_Kiril
2009-11-24 17:35
2010.01.17
Сортировка ListView по 2-ой колонке