5


私のプロジェクトでは、Lang_Unit.pas という名前のもう 1 つの UNIT をいくつかのクラスとプロシージャに接続しようとしていますが、プロジェクトのコンパイル中に、Delphi で「[dcc32 Fatal Error] Lang_Unit.pas(5): F2084」という不明なエラーが発生します。内部エラー: AV07953449-R26D7474C-0"。
重要なのは、プロジェクトを閉じたり、この接続された UNIT を削除したりしても、エラーが発生しないということです。
そして、明確なデフォルトの VCL アプリケーションを作成する場合でも、このエラーが発生します。
そして、Delphi 2010 を再起動しているときにのみ、エラーが解消されます。
しかし、コード内の何かを編集しようとすると、このエラーが再び発生します...
問題は何ですか? すべてが正常に動作し、何も触れていません。
PC の電源を切り、しばらくしてから電源を入れ、プロジェクトを開いてコードを編集すると、このエラーが表示されます...

その助けがあれば、ここに私の Lang_Unit.pas コードがあります:

unit Languages_UNIT;

interface

Uses
  System.Generics.Collections, IniFiles;

Type
TLanguages_List = Class

  private
    LangType:string;
    LangDescription:string;
    LangFile:TIniFile;

  public
  Constructor Create(LType,LDes:string; LFile:TiniFile);
  Function GetLangType:string;
  Function GetDescription:string;
  Function GetStructure:TIniFile;

End;




TLanguages_Controller = Class

  public
  Function GetStructureByType(RequestedType:string; LangList:TObjectList<TLanguages_List>):TIniFile;
  Function TypeExists(RequestedType:string; LangList:TObjectList<TLanguages_List>):Boolean;
  Procedure LoadLanguage(RequestedType:string; LangList:TObjectList<TLanguages_List>);

End;

implementation

uses Unit1;

Constructor TLanguages_List.Create(LType,LDes:string; LFile:TiniFile);
  Begin
    LangType:=LType;
    LangDescription:=LDes;
    LangFile:=LFile;
  End;

Function TLanguages_List.GetLangType:string;
  Begin
    Result:=LangType;
  End;

Function TLanguages_List.GetDescription:string;
  Begin
    Result:=LangDescription;
  End;

Function TLanguages_List.GetStructure:TIniFile;
  Begin
    Result:=LangFile;
  End;







Function TLanguages_Controller.GetStructureByType(RequestedType:string; LangList:TObjectList<TLanguages_List>):TIniFile;
var
i:integer;
  Begin
    For i := 0 to LangList.Count-1 Do
      Begin
        IF(LangList[i].GetLangType=RequestedType) Then
          Begin
            Result:=LangList[i].GetStructure;
            Break;
          End;
      End;
  End;


Function TLanguages_Controller.TypeExists(RequestedType:string; LangList:TObjectList<TLanguages_List>):Boolean;
var
i:integer;
GOTYA:Boolean;
  Begin
    GOTYA:=False;
    For i := 0 to LangList.Count-1 Do
      Begin
        IF(LangList[i].GetLangType=RequestedType) Then
          Begin
            GOTYA:=True;
            Break;
          End;
      End;
      IF(GOTYA) Then
        Result:=True
      Else
        Result:=False;
  End;


Procedure TLanguages_Controller.LoadLanguage(RequestedType:string; LangList:TObjectList<TLanguages_List>);
var
i:integer;
SLS:TIniFile;//SELECTED LANGUAGE STRUCTURE
CS:string;//CURRENT SECTION
  Begin
    //GET SELECTED LANGUAGE STRUCTURE
    For i := 0 to LangList.Count-1 Do
      Begin
        IF(LangList[i].GetLangType=RequestedType) Then
          Begin
            SLS:=LangList[i].GetStructure;
            Break;
          End;
      End;

      //START LOADING SELECTED LANGUAGE
        //TABS SECTION LOAD
        CS:='TABS';
        SD_DEFNAME:=SLS.ReadString(CS,'Speed_Dials','Speed_Dials');
        Form1.goleft.Hint:=SLS.ReadString(CS,'Back','Back');
        Form1.goright.Hint:=SLS.ReadString(CS,'Forward','Forward');
        REFLESHBTN_TEXT:=SLS.ReadString(CS,'Reflesh','Reflesh');
        STOPBTN_TEXT:=SLS.ReadString(CS,'Stop','Stop');

        //PAGE_POPUP SECTION LOAD
        CS:='PAGE_POPUP';
        Form1.ChromiumPopup.Items[0].Caption:=SLS.ReadString(CS,'Forward','Forward');
        Form1.ChromiumPopup.Items[1].Caption:=SLS.ReadString(CS,'Back','Back');
        Form1.ChromiumPopup.Items[2].Caption:=SLS.ReadString(CS,'Reflesh','Reflesh');

        Form1.ChromiumPopup.Items[3].Caption:=SLS.ReadString(CS,'Copy_Link','Copy Link');
        Form1.ChromiumPopup.Items[4].Caption:=SLS.ReadString(CS,'Save','Save');
        Form1.ChromiumPopup.Items[5].Caption:=SLS.ReadString(CS,'Print','Print');
        Form1.ChromiumPopup.Items[6].Caption:=SLS.ReadString(CS,'view_source','View Source');
        Form1.ChromiumPopup.Items[7].Caption:=SLS.ReadString(CS,'code_debug','Code Debug');

  End;


end.
4

5 に答える 5

1

私もこの問題を抱えていました(Delphi 10 Berlinで)。フレーム内のコンポーネントの名前を変更した直後に始まりました。それはまた非常に持続的に見えました。ただし、プロジェクトを右クリックして「クリーン」を選択してから「ビルド」を選択すると、問題が解決しました。

于 2016-07-15T14:54:41.700 に答える
0

私の場合、相互に関連するいくつかのパッケージを作成しましたが、すべてが設計および実行時パッケージとしてビルドされました。しかし、ある日、それらのいくつかを実行時のみのパッケージに変更しました。その後、この種のエラーが発生しました。他のすべての関連パッケージを再構築する必要があることに気付くのに何時間もかかりました。それをした後、最終的にエラーはなくなりました。

于 2021-09-14T18:21:17.940 に答える