Alcinoe icon indicating copy to clipboard operation
Alcinoe copied to clipboard

install error in d13

Open fjfzeagle opened this issue 2 months ago • 8 comments

MSBuild CodeBuilder.dproj /p:config=Release /p:Platform=Win64 /t:Build Microsoft(R) 生成引擎版本 4.8.9037.0 [Microsoft .NET Framework 版本 4.0.30319.42000] 版权所有 (C) Microsoft Corporation。保留所有权利。

Embarcadero Delphi for Win64 compiler version 37.0 Copyright (c) 1983,2025 Embarcadero Technologies, Inc. 53011 lines, 0.98 seconds, 2139336 bytes code, 250080 bytes data.


Normalize all Units, DProj and DeployProj

Skipped D:\develop\opensource\Alcinoe_D13\Demos\ALJsonDoc_Source\dwsJSON.pas (FilesToIgnore) Skipped D:\develop\opensource\Alcinoe_D13\Demos\ALJsonDoc_Source\dwsStrings.pas (FilesToIgnore) Skipped D:\develop\opensource\Alcinoe_D13\Demos\ALJsonDoc_Source\dwsUtils.pas (FilesToIgnore) Skipped D:\develop\opensource\Alcinoe_D13\Demos\ALJsonDoc_Source\dwsXPlatform.pas (FilesToIgnore) Skipped D:\develop\opensource\Alcinoe_D13\Source\Grijjy.ErrorReporting.pas (FilesToIgnore) Skipped D:\develop\opensource\Alcinoe_D13\Source\Grijjy.SymbolTranslator.pas (FilesToIgnore) Skipped D:\develop\opensource\Alcinoe_D13\Tools\ImageMagickWrapperGenerator_Source\ImageMagickWrapperGenerator.dpr (FilesToIgnore)

Units, DProj, and DeployProj have been normalized successfully


Auto-Generate Source Code

Exception: Error BEDEF98F-7167-459E-B26C-1F30FC4B43DC - TALDynamicExtendedControl

Build failed! Press <Enter> key to quit

fjfzeagle avatar Nov 29 '25 10:11 fjfzeagle

do you use the last committed version ?

Zeus64 avatar Nov 29 '25 11:11 Zeus64

can you try to run Alcinoe\Tools\CodeBuilder_Source\CodeBuilder.dpr and add a break point in

function ExtractClassInterface(Const aSrc: ansiString; Const AClassName: AnsiString): AnsiString;
begin

  //  TALShape = class(TALControl)
  //  strict private
  //    FFill: TALBrush;
  //    FStroke: TALStrokeBrush;
  //    fShadow: TALShadow;
  //    function GetFill: TALBrush;
  //    procedure SetFill(const Value: TALBrush);
  //    function GetStroke: TALStrokeBrush;
  //    procedure SetStroke(const Value: TALStrokeBrush);
  //    function GetShadow: TALShadow;
  //    procedure SetShadow(const Value: TALShadow);
  //  protected
  //    procedure FillChanged(Sender: TObject); virtual;
  //    procedure StrokeChanged(Sender: TObject); virtual;
  //    procedure ShadowChanged(Sender: TObject); virtual;
  //  public
  //    constructor Create(AOwner: TComponent); override;
  //    destructor Destroy; override;
  //    procedure AlignToPixel; override;
  //    property Fill: TALBrush read GetFill write SetFill;
  //    property Stroke: TALStrokeBrush read GetStroke write SetStroke;
  //    property Shadow: TALShadow read GetShadow write SetShadow;
  //  end;

  Var P1 := AlposIgnoreCaseA('  '+AClassName+' = class(', aSrc); // TALShape = class(TALControl)
  If P1 <= low(aSrc) then
    raise Exception.Create('Error BEDEF98F-7167-459E-B26C-1F30FC4B43DC - ' + String(AClassName));
  inc(P1,2); //  TALShape = class(TALControl)
             //  ^P1
  var LIndent: AnsiString := '';
  While (P1 > low(aSrc)) and (not (aSrc[P1-1] in [#13, #10])) do begin
    LIndent := aSrc[P1-1] + LIndent;
    dec(P1); //  TALShape = class(TALControl)
             //^P1
  end;
  If P1 <= low(aSrc) then raise Exception.Create('Error E07E2BA9-F996-4A82-ABF8-A34E822DED20 - ' + String(AClassName));
  var P2 := AlposIgnoreCaseA(#13#10+LIndent+'end;', aSrc, P1); // end;
  If P2 <= 0 then raise Exception.Create('Error 4514C0C2-F078-4239-A711-408DA0C10BEC');
  inc(P2, length(#13#10+LIndent+'end;'));
  Result := '{~~~~}' +#13#10+ AlCopyStr(aSrc, P1, P2 - P1);

end;

and say me why it's failed at

If P1 <= low(aSrc) then raise Exception.Create('Error BEDEF98F-7167-459E-B26C-1F30FC4B43DC - ' + String(AClassName));

can you copy past here the content of aSrc when it's crash ?

Zeus64 avatar Nov 29 '25 11:11 Zeus64

That error occurred. Today, I deliberately re-git to the latest version,, but it's still the same error, I wrote the content of the asrc variable to src.txt,open src.txt {*************************************} {$IFNDEF ALCompilerVersionSupported130} {$MESSAGE WARN 'Check if FMX.Controls.TControl was not updated and adjust the IFDEF'} {$ENDIF} TALDynamicExtendedControl = class(TALDynamicControl)) private class var FNoScale: TPosition; private

It is found that there is only one in front of the TALDynamicExtendedControl Spaces,but AlposIgnoreCaseA(' '+AClassName+' = class(', aSrc); There are two Spaces in front,SO,P1=0

fjfzeagle avatar Nov 29 '25 15:11 fjfzeagle

src.txt

fjfzeagle avatar Nov 29 '25 15:11 fjfzeagle

Something wrong with your computer, can you try on another computer ? look like your computer is modifying by himself some files

Zeus64 avatar Nov 29 '25 18:11 Zeus64

I just try now inside a fresh new blank VM, everything work fine :

Image

Zeus64 avatar Nov 29 '25 18:11 Zeus64

Ok. Thank you very much. I'll do some more research

fjfzeagle avatar Nov 30 '25 03:11 fjfzeagle

This issue is caused by file encoding and results in incorrect string operations. Please fix the file encoding—particularly files saved as UTF-8 with BOM—because they cause functions like StringReplace (when used with AnsiString parameters and case-insensitive options) to produce wrong results, especially for inputs that contain special UTF-8 encoded characters.

shengxinye avatar Nov 30 '25 10:11 shengxinye