2

Delphi 10.1 ベルリンを使用しています。私の友人は Delphi XE4 を持っています。

FMX フォームに属するコードを変更したいと考えています。コードとフォームは XE4 で書かれており、XE4 でコンパイル可能である必要があります。10.1 IDE 内でコードを編集して変更を保存すると、Delphi によってソース コードが変更され(単位が追加され)、フォーム(FMX ファイル)が新しい形式に変換されます。この変更されたフォームが XE4 でコンパイルされると、いくつかのエラーが発生します。

これらの変更を行わないように Delphi に指示することは可能ですか?

ところで:

  • IDE の外でコードを編集すると、すべて正常に動作するように見えます。
  • Delphi 10.1 では、ユニットFMX.ComboEdit, FMX.ScrollBox, FMX.Controls.Presentationがすでに存在する場合でもユニットを追加しています (例:

      {$IFDEF DELPHIX_BERLIN_UP} 
      FMX.ComboEdit, FMX.ScrollBox, FMX.Controls.Presentation
      {$ENDIF}
      FMX.ActnList;
    

    に変更されます

      {$IFDEF DELPHIX_BERLIN_UP} 
      FMX.ComboEdit, FMX.ScrollBox, FMX.Controls.Presentation
      {$ENDIF}
      FMX.ActnList, FMX.ComboEdit, FMX.ScrollBox, FMX.Controls.Presentation;
    

    コンパイラエラーにつながる:

      E2004: Identifier redeclared: FMX.ComboEdit ... 
    
4

1 に答える 1

3

Delphi にこれらの変更を行わないように指示することはできますか?

いいえそうではありません。DFM/FMX ファイルは IDE で管理され、バージョン固有であり、常にそうでした。IDE バージョンごとに個別の DFM/FMX ファイルを維持する必要があります。

通常は、古い IDE が新しい IDE によって追加されたプロパティを警告して無視するようにしても問題ありません。また、古い IDE で開く前に、DFM/FMX ファイルから新しいプロパティを削除するサードパーティ ツールがいくつか出回っています。

于 2016-05-19T20:01:49.160 に答える