On Sat, 13 Jan 2007 22:36:43 +0100 "Darius Blaszijk" <[EMAIL PROTECTED]> wrote:
> >> >> I'm porting a delphi app to lazarus. But when I try to run the > >> >> app it keeps crashing with the below message. > >> >> > >> >> I suspect the LRS file is corrupt, but I have no idea how to > >> >> check or better fix this. I tried removing the LRS file several > >> >> times and save the project which recreates the LRS file. But > >> >> that does not help unfortunately. Does anyone have an idea? I'm > >> >> using lazarus 0.9.20 and fpc 2.0.4. > >> > > >> > The .lrs file is simply a converted .lfm file. I doubt it is > >> > 'corrupt', but it can contain properties/values that does not > >> > exist/make sense. see below > >> > > >> > > >> >> Darius > >> >> > >> >> > >> >> [InitComponent] TMainForm True > >> >> [InitComponent] TForm True > >> >> [InitComponent] CompResource found for TMainForm > >> >> Form Stream "TMainForm" Signature=TPF0 > >> >> Form streaming "TMainForm" error: Class " " not found > >> > > >> > 'Class " " not found' is a TReader error. > >> > TReader seldom gives helpful error messages. > >> > Can you open the form in the IDE? > >> > >> Yes, I can. The converted form containted indeed several invalid > >> properties like OldCreateOrder, but this is well known and I never > >> had problems with it before. > >> It's strange though that if I save the project after compiling the > >> form is not able to open anymore. I get the following error: > >> "unable to convert text form data of file c:\etc\etc\main.lfm into > >> binary stream. (Identifier expected on line 3191)". > > > > Then the .lfm is corrupt. What is at (in front of) line 3191? > > This is indeed the case. There is an empty "object end" on that line. > When I remove it the problem is still not solved. I get the error: > "Unable to transform binary component stream of Mainform: TMainForm > into text. Division by zero." > What I find strange is that after converting the dfm to lfm I need to > remove several invalid properties from the LFM (automatically > proposed). The .dfm to .lfm converter is very basic. It only renames (and let the IDE repair it interactively on next open.) > Then I can open the LFM file without problems in the IDE. > But when I save the LFM file it's corrupt and a lot of components on > the form are gone. I tried saving the form as XML file and it appears > that the error starts with the ImageList. Somehow saving the > imagelist seems to have a bug. When I check the imagelist from the > IDE I seen nothing strange. Next is the definition of the imagelist > where the error occurs. > > <component name="ImageList" class="TImageList"> > <properties> > <integer name="left" value="40"/> > <integer name="top" value="480"/> > <binary name="Bitmap" value="li! (*from here some binary > characters are present*) The xml writer does not support all TWriter tricks, so don't use that to debug. Can you send me the .dfm and the .pas? Or at least the .dfm? Mattias > > Darius > > > > > Mattias > >> > > >> >> [FORMS.PP] ExceptionOccurred > >> >> Sender=EAccessViolation > >> >> Exception=Access violation > >> >> Stack trace: > >> >> $00453A59 TCUSTOMACTION__SETCHECKED, line 102 of > >> >> ./include/customaction.inc > >> >> $0040E189 TMAINFORM__SETMODE, line 856 of main.pas > >> >> $00412F2A TMAINFORM__FORMCREATE, line 1955 of main.pas > >> >> $00404DB9 TCUSTOMFORM__DOCREATE, line 614 > >> >> of ./include/customform.inc $0040656C TCUSTOMFORM__CREATE, > >> >> line 1297 of ./include/customform.inc $0040C0D2 > >> >> TAPPLICATION__CREATEFORM, line 1523 > >> >> of ./include/application.inc $004010AB main, line 32 of > >> >> LpSolveIDE.lpr TApplication.HandleException Access violation > >> >> Stack trace: > >> >> $00453A59 TCUSTOMACTION__SETCHECKED, line 102 of > >> >> ./include/customaction.inc > >> >> $0040E189 TMAINFORM__SETMODE, line 856 of main.pas > >> >> $00412F2A TMAINFORM__FORMCREATE, line 1955 of main.pas > >> >> $00404DB9 TCUSTOMFORM__DOCREATE, line 614 > >> >> of ./include/customform.inc $0040656C TCUSTOMFORM__CREATE, > >> >> line 1297 of ./include/customform.inc $0040C0D2 > >> >> TAPPLICATION__CREATEFORM, line 1523 > >> >> of ./include/application.inc $004010AB main, line 32 of > >> >> LpSolveIDE.lpr [InitComponent] TPromptDialog True > >> >> [InitComponent] TForm True > >> >> Runtime error 217 at $0055FA22 > >> >> $0055FA22 DOUNHANDLEDEXCEPTION, line 156 of > >> >> C:/lazarus/source/fpcbuild/2.0.4/fpcsrc/rtl/inc/except.inc > >> >> $0055B80C fpc_reraise, line 266 of > >> >> C:/lazarus/source/fpcbuild/2.0.4/fpcsrc/rtl/inc/except.inc > >> >> $00401134 main, line 26 of LpSolveIDE.lpr > >> >> $0055B59E EXE_ENTRY, line 420 of system.pp > > _________________________________________________________________ > To unsubscribe: mail [EMAIL PROTECTED] with > "unsubscribe" as the Subject > archives at http://www.lazarus.freepascal.org/mailarchives _________________________________________________________________ To unsubscribe: mail [EMAIL PROTECTED] with "unsubscribe" as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
