Модуль GIFImg был скомпилирован с другой версией CCR.Exif.Consts.SOutOfResources

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

[DCC Fatal Error] 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 ответа

Решение

Решено:

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

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

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

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

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

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

Другие вопросы по тегам