Solved

Error Creating Form

Posted on 1997-07-29
4
982 Views
Last Modified: 2012-08-14
I have just had to re-install windows and delphi after my system files became corrupted and now one of my forms in my delphi 2.01
project will not open.

I get the message cannot open form - unspecified error

I have reinstalled all the components for the form but I still cannot load it up. When the program runns it works ok until I get an interaction between the ChartFX and a VCFormula 1 table at which point I get an  Exception - EAccessViolation

Anybody have a solution?
0
Comment
Question by:essbb
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
4 Comments
 
LVL 4

Accepted Solution

by:
StevenB earned 50 total points
ID: 1340160
 Beware the Formula1 component, all is not as it seems. This component forms the backbone of our project, a decision we made some time ago, but are now starting to regret. The component behaves in a strange manner when run through Delphi. The most significant problem being that it generates access violations when its maximum values are exceded. (The maximum value is about 9.9e301 as I recall, it's in the help file under specifications). It does much the same when a single value greater than about 1e19 is entered into a formula.
  This is not the behaviour which I expected from a component that I'd payed a significant amount of money for, so I contacted the manufacturers. They told me that, in essence, their component did not specifically support Delphi (The decision to ship the trial version with D2 and 3 was made by Borland, who own the rights to the trial version) They said that the component works perfectly under VisualBasic (I checked, it seems to) and that it fullfilled all the criteria specified by Microsoft for the ActiveX specifications. They put the blame with Borland and suggested that the Delphi support for ActiveX controls was not quite 100%. (There was some explanation given here involving Windows DLLs and changing Microsoft standards, but it got a bit beyond my knowledge of the underlying windows structure). I phoned Borland and put these accusations to them. They were less than direct in their answers, refusing to confess guilt directly, however they did hint that the fault might be theirs. There was also some vague suggestion that an upgrade for D3 in early August might resolve some of these problems.
  That is the story so far as far as I can ascertain. The question of where it leaves you still remains. From what you've described it sound to me like you are exceding the maximum values in the F1Book and causing the Access violation. Check if this is the case, and if so try and put in some error trapping to prevent it happening. I know this is very difficult and we havn't managed to implement it in our project. If this is not what is occuring then feel free to reject the answer, but please heed my warning and tread very carefully with Formula1. It can cause huge problems if you let it.

  Steven.

  P.S. If you discover any more Bugs etc. with F1 and Delphi then I'd be most grateful if you could let me know. You're the only other person I've found who uses the component.

  stemail@dial.pipex.com
0
 

Author Comment

by:essbb
ID: 1340161
Steven,

Our project only uses Formula 1 in a small way the table size is about 6 x 20 cells and the values rarely exceed 100. The point at which the program crashes is when I set the chartfx.maxserie to formula1.maxcol.

My Main Problem is that I Cannot display the form in design mode, this is when I get the error.
0
 

Author Comment

by:essbb
ID: 1340162
If you delete all refernces to the table (from both the .pas & .dfm) and then add a new one it works!
0
 
LVL 4

Expert Comment

by:StevenB
ID: 1340163
F1UPDATE F1UPDATE F1UPDATE F1UPDATE F1UPDATE F1UPDATE F1UPDATE

  Recently discovered bug (Fortunately with very easy work around)

  Never do this : EntryRC := '';

  The empty string siezes the machine. Always check for empty strings.

  Steven.
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Creating an auto free TStringList The TStringList is a basic and frequently used object in Delphi. On many occasions, you may want to create a temporary list, process some items in the list and be done with the list. In such cases, you have to…
Introduction I have seen many questions in this Delphi topic area where queries in threads are needed or suggested. I know bumped into a similar need. This article will address some of the concepts when dealing with a multithreaded delphi database…
There's a multitude of different network monitoring solutions out there, and you're probably wondering what makes NetCrunch so special. It's completely agentless, but does let you create an agent, if you desire. It offers powerful scalability …
In this brief tutorial Pawel from AdRem Software explains how you can quickly find out which services are running on your network, or what are the IP addresses of servers responsible for each service. Software used is freeware NetCrunch Tools (https…

717 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question