I have a problem reading a XLS-Worksheet, which contains a rather big graphic. The worksheet has 450k with this embedded graphic and 175k without the graphic.
The worksheet is transferred via FTP to a server and an automatically started application has to read some values from several sheets.
When the Delphi 6 application is started and tries to read the worksheet, the application crashes in the following routine of the unit xlsreadII2.pas:
Code: Select all
procedure TXLSReadII.RREC_LABELSST;
begin
InsertRecord := False;
try
with PRecLABELSST(PBuf)^ do
FXLS.Sheets[FCurrSheet].IntWriteSSTStringIndex(Col,Row,FormatIndex,SSTIndex); <=== crash
except
raise Exception.CreateFmt('Read error at %.8D',[FXLSStream.Pos]);
end;
end;
In the project test.exe has an exception of the class EListError occured. Message: 'Index of list greater than the maximum (0)'. Process was paused. Continue with next statement or start.
If I delete the graphic, there's no problem to read the worksheet. But because my application runs automatically, ther's no chance to delete the graphic. Has someone an idea, how i can avoid the problem
Thanks
Klaus