I've been working in Delphi 7 for the last 6 years now and have learnt to merely submit to the instablity of the IDE. For example, there are particular projects I've inherited which, when working on, I cannot use the CTRL+SPACE dropdown symbol list in the Delphi editor without getting an Access Violation error, this would easily top my list but there are many more. I'd like to know which bugs frustrate you the most.
The one where if you open a TADOQuery's SQL text in code view, save your project and quit, then reopen it, you get some error related to "invalid TStringsFileSystem".
Then there are the mysterious errors relating to .$$$ files which I haven't figured out yet.
I have one project I can't open without an AccessViolation in the VCL :\
For me it's a battle between
the various problems when debugging multi-threaded programs, like for example pressing F7 and both the program and the IDE go into a state where 100% CPU is consumed, both are unresponsive, and only the task manager can help to get things sorted. Or various exceptions in bordbkXX.dll; and
the tendency of the IDE to keep references to search results in the message window after they have been cleared, also leading to constant AVs and the need to kill the IDE.
I really hate it when the debugger is confused. Sometimes it can not find the files, or it finds the wrong ones.
A variant on this problem is the ghost breakpoints:
- you have a file in one location.
- during debugging you put some breakpoints in the file.
- you find the bug, and checks the file out.
- you now edit the checked out file and start build/run again.
- the IDE now uses the breakpoints from the original file in the checked out version and you can't disable them from the editor (only from the breakpoint list).
The ones that annoy me more than anything is where the IDE just decides to close itself and disappears from the screen, losing any changes you may have made. It has only happened a few times using the 2007 IDE but it really is most annoying.
I would have to agree with the multithreaded debugging issues and not being able to find the correct unit it is debugging. The worst case of this is when you open a file from a different directory from the unit you are using, but a unit with the same name is present in the directory. It then proceeds to open the wrong unit and starts stepping through it.. (I think this was a Delphi 7 issue).
Also with the Delphi 2007 IDE, the red wavy lines saying it can't find identifiers or units drives me up the wall when it can actually find them, especially when the units it cannot find are something like Controls.pas ??
My delphi 2007 always freezes when closing it. Vista asks me to wait, shut it down or restart. The next time I start Delphi, I have to reselect my layout.
Also, the ctrl+click vs ctrl+enter on filenames in uses annoys me. Sometimes it work, sometimes it don't. Sometimes it opens the 'open file'-dialog in the right directory. Why can't it just open the file?
What's bug me the most, though, is the list of errors in the structure-window. 'Undeclared identifier TForm at line....' . Now, why is that??
And one more: Why doesn't Ctrl+F4 work in the designer ? When I have a lot of files open, I tend to Ctrl+F4 repeatedly to close them, but when it reach a formdesigner-window, it stops. (I use embedded/docked layout)
I hate it when I edit a *.pas file and the IDE decides to make random changes to the corresponding DFM. Some of these changes are bugs (TabStop on frames), some are as designed (Explicit*, DesignSize) and some are inbetween (Sometimes the ItemHeight of a csDropDownList combobox is changed to 0, sometimes back to 13. I never figured a scheme to it out.).
The worst bug for me, is the one that happens when you open a Form or something which it's ancestor was modified, then the IDE asks you what happened to some component that was removed, you select either removed or renamed, click OK then click to save the file.
But when you run the application it crashes, because the IDE doesn't save anything if you don't move something on the Form.
I've got so tired of this bug, that I'm kind of addicted of moving random components in every form I open, just to make sure that Delphi saves them! urgh!
In Delphi 2007, the object inspectors grid sometimes isn't redrawn correctly. So if i click on it to alter a property, i'm in the wrong row and have to wonder why the IDE throws an error like "'MyButton' is not a valid integer value."
I have got one error which results in the IDE throwing an access violation which will repeat endlessly. I think it has something to do with the syntax highlighting. It only happens when I start to select some text in the editor. Sometimes it is possible to recover by unselecting the text again, but usually I have to kill the IDE. This bug has been in all versions of Delphi from 5 to 2007, I haven't seen it in Delphi 2009 yet.
I also hate it when Delphi seems to decide on a whim not to compile runtime packages into your executable.
The exe appears to work fine because it can find the bpls it needs at runtime on my dev box and the problem is only discovered after it leaves my machine. Grrr.
I have observed conditional breakpoints and watch-window function calls both becoming unreliable (i.e., working intermittently or not at all) several years into the development of a fairly large application. This made debugging very difficult.
The F1 help also stopped working at some point (the help window would not open at all when the function key was pressed). We had to resort to launching help from the menu item, and then typing the name of the topic that F1 should have loaded for us.
The help system in Delphi 2006 is totally useless.
- To find the topic you need help on is difficult
- There are hardly any examples
- The language filter does not work
Plus many other problems
It is so bad that when I need help I use Google rather than the built in help
In Delphi 7 F11 would toggle between the form and the Object Inspector. In Delphi 2009:
Select control on Form
F11 into the Object Inspector
Select another control on Form
F11 goes to the code
With Delphi 2007, 2009, 2010 the CPU utilization is 100% (only one core) when Delphi IDE is visible on screen. It doesn't happen when the IDE is minimized. My computer is overheating because of this.
I hate is sooooo much. And it is such and old bug!!!!!!!!!!!!!!!!!
I have stopped reporting bugs since there are so many old bugs unfixed. Why spending 5-15 minutes to report a bug if it will be fixed in 5 years? Best way is to learn to live with the bug and find a workaround or to minimize its impact.
I think it has been fixed in a newer version, but one problem that has bothered me for some time was a bug in the ADO VCL runtime. In this case, database negative values were returned as positive values. And, in general, access violations when working with multithreaded database access and dbexpress.