[Webinar] Streamline your web hosting managementRegister Today

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 453
  • Last Modified:

RichEdit access violation

I have a rich edit set to handle more text than would usually fit in that control by setting maxlength to High(Integer)-1024.  When I search the text using findtext and it is a long way into the text I get an access violation.  I am assuming that is because the search routine for findtext cannot *see* beyond a certain limit, even though it does find the text looked for.

Is there a way to stop the access violations?
0
jdthedj
Asked:
jdthedj
2 Solutions
 
ThievingSixCommented:
What is the a/v? Do you what index in the richedit you hit when you a/v'd? Maybe you crossed some 32bit bounds you didn't realize were still there.
0
 
jdthedjAuthor Commented:
Thanks for the reply ThievingSix - What is a/v?
0
 
jdthedjAuthor Commented:
Sorry - hit button before finished.  Violation is

Access Violation at address 00450C4D in module HTML_Tables.exe Read of address 00A93A38
0
Get expert help—faster!

Need expert help—fast? Use the Help Bell for personalized assistance getting answers to your important questions.

 
ThievingSixCommented:
Do you know what line produced that error?
0
 
jdthedjAuthor Commented:
The richedit has 4354 lines and 135348 chars in the one I am testing.  The violation occurs at random when I search for anything near the end - eg at line 3971.  It happens when I close the search dialog after the text has been found.
0
 
torimarCommented:
Since you modified the RE control to do what it isn't usually supposed to do, I assume you will only get rid of that A/V if you also modify the Findtext method in order to do what it wasn't originally made for doing.

You may have to write your own wrapper functions. Here's some material that might come in handy:
http://msdn.microsoft.com/en-us/library/bb787877(VS.85).aspx
http://msdn.microsoft.com/en-us/library/bb788011(VS.85).aspx
http://msdn.microsoft.com/en-us/library/aa366781(VS.85).aspx

Alternatively, you might want to consider trying to find a third party RE control (not based on the MS dll and its restrictions) that by default supports huge amounts of text. I know there is a rxRichEdit in the popular rxLib (http://www.dummzeuch.de/delphi/rxlibsf/english.html) which then was integrated into the Jedi VC Library (http://homepages.borland.com/jedi/jvcl/), and there is also the pretty popular, but commercial RichView component set (http://www.trichview.com), but I wasn't able to retrieve the specs regarding huge text support in either of them.
0
 
Geert GruwezOracle dbaCommented:
when you run it from the Ide with F8
and then use menu Search / Find Error  at 00450C4D
you could locate the code causing the AV
0
 
jdthedjAuthor Commented:
Thanks Geert - I tried that and it says "Invalid address value. Must be a hexadecimal value in the range 00000000 - FFFFFFFF".  I checked my typing, and that must be within the range?
0
 
jdthedjAuthor Commented:
Looks like I must reluctantly look for another component to avoid the access violations.
0

Featured Post

Learn to develop an Android App

Want to increase your earning potential in 2018? Pad your resume with app building experience. Learn how with this hands-on course.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now