Модуль GIFImg был скомпилирован с другой версией CCR.Exif.Consts.SOutOfResources - PullRequest
0 голосов
/ 21 января 2012

Я пытался использовать библиотеку EXIF ​​ в одном из моих пакетов.Раньше это работало, но теперь я получаю странные сообщения:

[Неустранимая ошибка DCC] F2051 Модуль GIFImg был скомпилирован с другой версией CCR.Exif.Consts.SOutOfResources

Я действительно не понимаю ... Почему Delphi пытается перекомпилировать один из своих файлов?Как это исправить?

GifImg находится здесь:

c: \ Program Files \ Embarcadero \ RAD Studio \ 8.0 \ source \ vcl \ GIFImg.pas

Обновление:

Я посмотрел на дату этого файла (1 PAS и 2 DCU), и у него совпадает дата с любым другим файлом в папке RAD Studio \ 8.0 \ source \ vcl.Таким образом, файл не был случайно изменен.

Update2:

Это мое условие использования:

USES Windows, SysUtils, AnsiStrings, Graphics, Dialogs, Classes, jPeg,
     pngImage,                     
     janFX,   //CCR.Exif,
     {$IFDEF VER150}
        GIFImageFinn     {Delphi 7}
     {$ELSE}  
        GIFImg           {Delphi 2010/XE}
     {$ENDIF}
     ; 

Если я комментирую CCR.Блок EXIF, он начинает компилировать мой пакет.Итак, добавление EXIF ​​в мой пакет что-то нарушает.

Ответы [ 2 ]

1 голос
/ 21 января 2012

То, что вы сообщаете, не совсем складывается.Блок GIFImg, являющийся частью источника Delphi, не относится к CCR.Exif.Consts.SOutOfResources.И ни одна из единиц, используемых GIFImg, также не относится к ней.

Так что объяснения, которые мне кажутся правдоподобными:

  1. Вы включаете единицу под названием GIFImgв вашем проекте.
  2. Вы обнаружили ошибку компилятора.

Сообщение об ошибке F2051, как мне кажется, обычно выдается, когда вы пытаетесь перекомпилировать RTL / VCLединица, но не в состоянии установить параметры проекта, чтобы соответствовать тому, который используется истинным RTL / VCL.В качестве альтернативы он будет выдан, когда вы перекомпилируете модуль RTL / VCL, который имеет модификации в своем разделе интерфейса.

0 голосов
/ 22 января 2012

Решено:

Я удалил точки в именах файлов. CCRExif вместо CCR.Exif.

Это было противно.

...