Hi 

What I normally do is add everything I need in a report to a TStringList. 
Then I add it to a TRichEdit in one go (Richedit.text = stringlist.text)

Hope this helps

Regards,
Riaan Stander

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
On Behalf Of Human
Sent: Friday 03 March 2006 16:18
To: Delphi-Talk Discussion List
Subject: Re: Strings in Delphi should be 2GB, right?

Jesus!
That FastMM is FAST!
Building the rapport took 3x less time.
And I don't get that EOutOfMemory error.
TAHNKS ALOT. You have been very helpful !!!



But as always, when I ran into a problem I am never satisfied just to change
the path.
I still want to know how to build big strings using Delphi native functions.
If someone can give me a hint about that it will satisfy my curiosity.


--- Fastream Technologies <[EMAIL PROTECTED]> wrote:

> Hello Human,
> 
> You've run into memory fragmentation. I would sugest you to use 
> NexusMM
> ($120) or FastMM (free). Sorry, I cannot remember the URLs. Google is 
> your friend.
> 
> Regards,
> 
> SZ
> 
> ----- Original Message -----
> From: "Human" <[EMAIL PROTECTED]>
> To: "Delphi-Talk Discussion List" <[email protected]>
> Sent: Friday, March 03, 2006 1:50 PM
> Subject: Strings in Delphi should be 2GB, right?
> 
> 
> > Strings in Delphi should be able to store 2GB, right?
> > I got an exception after 4MB.
> >
> >
> >
> > I have to create a report about 800-1000 files in a folder.
> > I've tried to write the report in a TRichEdit component but it was 
> > TO SLOW because the refresh after each line I added. BeginUpdate 
> > didn't help at all. Actually it has no effect.
> >
> > So I decided to write it directly on the HDD as a HTML file.
> > I made a new form and a global variable (called Raport) where I 
> > store the
> > HTML:
> >
> > var Raport: string;
> > procedure TFrmHTML.AddLine(s: String); begin Raport:= Raport+ CRLF+ 
> > '<br>'+ s; end;
> >
> > At the end of the program I discharge the content of that variable 
> > in a file.
> > The problem is that after exactly 4MB it gives me an EOutOfMemory error.
> > It appears when I try to add more characters to that Raport variable.
> > The CPU window shows me that the exception was 'born' in the 
> > @StrSetLength function which is not documented in my Help file 
> > (Delphi 7).
> > After this the program quit the main loop (leaving few file not 
> > processed).
> >
> > What it is strange it the fact that after the exception is raised 
> > and closed, I continue to write to that variable (the end of the 
> > HTML </body> </html>) and it accept without rising the exception.
> > Finally the string is saved gracefully on the HDD.
> >
> > I have 768 BM of RAM in my computer. All the time AT LEAST 250MB are 
> > free (I use CacheMan XP to monitor my memory).
> > One hour ago the program worked ok, till the end (it processed all 
> > 822 files).
> >
> > The memory requirements were:
> > After it finished: 37MB
> > Peak memory      : 39MB
> > Virtual mem      : 32MB
> > In my system the page file usage was 565MB (I had other huge 
> > applications running).
> >
> >
> > Why it runs out of memory? It isn't supposed to use VM when it runs 
> > out of real memory (which it isn't my case anyway).
> > What will happen if I want to process more that 1000 files?
> >
> >
> > PS: I don't want to use a third party Report component. I've took a look

> > at few free and trial
> > components.
> > They where to expensive, or to slow, or much to complex (and in the same

> > time big in size).
> > I just want to write line of text with monospaced characters/font and
some 
> > letters should be
> > colored in red. That's all.
> >
> >
> > ...and the traveler died, stroked by the beauty of the landscape.
> >
> > THE MORNING OF THE MAGICIANS
> > Louis Pawels & Jacques Bergier
> >
> > __________________________________________________
> > Do You Yahoo!?
> > Tired of spam?  Yahoo! Mail has the best spam protection around
> > http://mail.yahoo.com
> > __________________________________________________
> > Delphi-Talk mailing list -> [email protected]
> > http://www.elists.org/mailman/listinfo/delphi-talk 
> 
> __________________________________________________
> Delphi-Talk mailing list -> [email protected]
> http://www.elists.org/mailman/listinfo/delphi-talk
> 


...and the traveler died, stroked by the beauty of the landscape.

THE MORNING OF THE MAGICIANS
Louis Pawels & Jacques Bergier

__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 
__________________________________________________
Delphi-Talk mailing list -> [email protected]
http://www.elists.org/mailman/listinfo/delphi-talk


__________________________________________________
Delphi-Talk mailing list -> [email protected]
http://www.elists.org/mailman/listinfo/delphi-talk

Reply via email to