I am upgrading from Delphi 7 to Delphi 2009.
In an existing app, the code completion does nothing at all. If I start a new project, it works fine.
Any idea what is going on?
Finally found the solution to this one, took awhile.
Added "WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE" to:
Project Options -> Delphi Compiler -> Unit aliases
There is a whole big reason why, but to tired to explain it.
Related
I'm trying to move a project that was done in a previous version of C++Builder to 10.1 Berlin (I am using the trial version of C++Builder).
The project was converted and compiled succefully with minimal efforts. Then I got the well-known linker LME288 problem, but it was resolved by starting C++Builder as an administrator.
But now, when I start the application, I get a message box saying "Abnormal program termination" at the very beginning - even before the main window appears on screen.
The situation is the same for debug and release versions, under IDE and as standalone. When I start the program inside the IDE, and set a breakpoint at the very first statement, the error message appears before this statement.
I have Windows 10 Pro, 64-bit. C++Builer 10.1 Berlin trial. It shows the only accessible platform is Win32, but I don't know if this is a reason for an error. The program worked fine for previous versions.
Could anybody advise me what to do? Is there a systematic way of investigating the problem?
I have tried all recommendations I could found - use debugger, show us the code, try reinstalling software or Windows, upgrade to latest updates, etc. But I have never seen a systematic approach.
Here are a couple of things I had to do to get my project working.
1) Start a new project. For some reason old projects can get corrupted and produce strange errors. I recommend starting a new project and adding your files to it.
2) Use an old version of borlndmm.dll The version provided with C++ Builder 10 produced crashes for me that made no sense. I overwrote the provided copy of borlndmm.dll with a copy from XE6 or XE8. That solved my problem.
Hopefully one of these will help you.
I've been widely making use of the Complete Class at Cursor function in Delphi, in 2010 and in XE2. Recently, after installing Update 4 for XE2, the Complete Class at Cursor stopped working. After doing some research, I found that uninstalling "AQTime" would fix the issue. So I did that (had to re-install Delphi just to remove it) and sure enough it started working again.
Except, today, it suddenly stopped again. AQTime is not installed, and I haven't done anything in the IDE at all which (as far as I know) could possibly cause this. I haven't installed/uninstalled any packages, changed any library paths, not even changing any settings. It just suddenly stopped working in the middle of my development. Was working one minute, and not the next. I've restarted Delphi, restarted my PC, and even tried in a brand new project. It just will not work anymore.
Anyone know why this stopped working? How can I make it work again? It's an extremely helpful tool which I use all the time.
I had the same problem, but it was solved after uninstalling Smartbear AQTime from the windows uninstaller. (close Delphi first)
No need to reinstall Delphi.
Had the exact same issue in XE2/Update 4. Did the following (without uninstalling AQTime) and it came back.
Tools > Options >Editor Options > Code Insight
Verified the Code Completion was checked (it was), then changed the Delay to Low (was set to None) > OK
Code Completion in my IDE started working again.
I was having the same problem in Delphi Berlin. None of the above worked for me. I also tried regenerating the .dproj file but that also did not help.
The one thing that has worked (so far) is installing the excellent IDEFixPack for Delphi Berlin. Delphi IDE Fix Pack
Please let me take this opportunity also for a quick moan. Code completion is an absolutely essential feature of Delphi and it is very slow and flaky at best. Embarcadero (if you are listening) - please focus on making these core features much more robust.
Unstalling the AQTime8.20 integration in the IDE solve the problem for me too - used AQtime outside the IDE anyway.
After upgrading to Windows 7 all seems to work in my Delphi 2007 version except this one.
I know that 2007 is not build for win 7 but I'm not sure that the OS is the reason. My friend is using it without a problem.
When I use "Find Local References" all is fine.
Do you know a fix for this? Some dll registration may be?
I found the solution!
When I used Refactor -> Rename menu delphi didn't blew up but kindly show me the error. Unavailable interface call with the name of it.
So after short research I've registered 2 tlb files and all is working now.
..CodeGear\RAD Studio\5.0\bin\Borland.Studio.ToolsAPI.tlb
..CodeGear\RAD Studio\5.0\bin\Borland.Studio.Interop.tlb
I used tregsvr.exe for the registration without a problem under my x64 system.
P.S. I still wonder what else is not registered during the installation .. hopefully all is good.
Has anybody used/converted "Delphi Fundamentals" in Delphi 2009? - http://fundementals.sourceforge.net/
I'm using Dictionaries (cArrays.pas,cDictionaries.pas,cStrings.pas,cTypes.pas) in my project and now i have some troubles on upgrading code.
I'll be highly obliged if anybody can convert the above mentioned units in Delphi 2009. I'm quite new to Delphi, started working with 2007 and 2009 has been released, I just cannot help myself...
Thank you
I use cUtils, cDateTime and cStrings in a project.
After a 30 minute session of searching and replacing like a madman I got them to compile in Delphi 2009, with just a couple of warnings left to fix.
Char>>>>AnsiChar
String>>>>AnsiString
PChar>>>>PAnsiChar
PString>>>>PAnsiString
It passes all of its selftests, and so far things seem to work fine. I've shared it here: http://www.xs4all.nl/~niff/Fundamentals_UtilsD2009.zip
Update
I've added a ported cDataStructs.pas to the zipfile, which contains the dictionary classes. This one still has a lot of compiler warnings that you might want to fix, but the self-tests pass, so you could try and see if it works for you..
There is no official version of Delphi Fundamentals for D2009 (and I think there never will be any).
I think it would be the best option to rewrite the dictionary code using the Delphi-native TDictionary<TKey,TValue> class inside Generics.Collections.pas, or using the delphilhlplib (Collections/DeHL.Collections.Dictionary.pas).
I have created a few AUTOObjects using Delphi and its type library. It compiles without error, but when I tried to register it, Delphi froze, and doesn't return to normal. I have tried to register it in both Delphi 7 and 2006, but both get into the same problem. I tried to register a simple library in Delphi's demo, I am ruling out bad registry file,
There might be something wrong with my code, but I have no idea where, since it compiles well and I have not put any code in RegisterDLL.
Anyone had the same problem before?
You have not provided enough information for anyone to help you.
Have a read of this http://support.microsoft.com/kb/555375 on how to ask a technical question, it's written for the Microsoft newsgroups, but has the same application here.
Initialization sections of the units also get executed when registering a COM dll. Try registering outside of Delphi with tregsvr or regsvr32 and see if that works ok. You can also have those tools as a startup project and debug your dll while it gets registered.
Cheers everyone. I solved the problem. The problem was in one of unit there was a initialization code creates threads, now I have removed it, the library registers fine. :)