My array of 36 doubles is initialized at program start by writing a valid value to each and every one of the 52 cells (Note that I wrote to 52 cells, but the array was only 36 in size!)
That worked fine and has done so for about a year! Range Checking is off for speed purposes. I could turn it on, but may forget to turn it off later, and I do need quite a lot of real-time power elsewhere. (The array in question is, on the other hand, only accessed once a second or so.) The error occured at close down, however, NOT during writing to any one of those 16 non-existing cells.. Yes, the question is somewhat retoric now, that I have solved the problem, but I (and others?) may still learn something from this. Why do I not get an error during a write to an illegal memory location, but only get it maybe hours later when I try to free up the same (or some other?) location? I know, memory may be assigned in chunks of 4 kB at a time, which could have something to do with it. New variables have been added, that may conflict with the actual location of those additional 16 cells. And after initialization, by the way, the x-tra cells never come into use again! I only use up to 30. Now that I think about it, I seem to remember seing something like this before in other applications. (Writing to beyond max array locations --> some strange behavior, but no run-time error, or at least not until later.) This time I did debug my way through some of the CPU code. The actual error popped up after a reRaise of some kind. _______________________________________________ Delphi mailing list -> [email protected] http://www.elists.org/mailman/listinfo/delphi

