What IDE is the Delphi IDE developed in? - delphi

Out of curiosity, does anyone know which IDE the developers of the Delphi IDE are using?

In Delphi (probably the previous version). The compiler itself is written in C, but the IDE is written in Delphi. Through the OTA, you can actually access the various objects, like TActions, that exist in the IDE.

Related

Can I open my Delphi 2007 project in Visual Studio (or other IDEs)?

I have a big Delphi 2007 project, and the Delphi IDE is slow and unstable even I install DelphiSpeedUP, FixIDE Pack.
The IDE freezes for a few seconds when first loading the project (300K lines of code). The Type Library Editor is very inefficient when I want to add a new method/property because it has around 1000 APIs and it kinda freezes for ten seconds in the Type Library Editor.
But the Delphi Compiler is good and I am happy with that, just the IDE has many issues. The Visual Studio 2010/2012 is very good and stable.
Just wondering if it is possible to code in Delphi in the Visual Studio, a basic syntax highlighting, debugger is OK.
It is not possible.
Visual Studio not work with pascal lang.
You can use np++ for simple syntax highlighting and compile with command lines in DCC32.exe.
and the docs in here.
and for Debug use ollydb.
and I'll not suggest it.
and I think the likely pascal IDE to Delphi is Lazarus but it can't compile your Delphi source code directly.
and I'll not suggest it too.
I think use the Delphi with fix and speedup patches.

Is it possible to use Delphi XE2 to develop Windows CE Applications?

I have to develop an application to run on Windows CE accessing a remote Firebird database.
I would like to use Delphi to do so.
Is it possible?
Native Delphi only works with x86 compatible processors and Win32/Win64 or MacOS 10 API.
Ken White already pointed to you Delphi Prism, however if you would purchase it, instead of re-marked tool, you'd perhaps purchase the original product, i heard it comes with multiple platforms support instead of one. RemObjects Oxygene is the original product, part of which is re-sold as Prism.
Another option would be using Lazarus (vanilla or CodeTyphon distro). Its LCL library mimics VCL in many respects and FPC compiler mimics Delphi language (and some other Pascal dialects as well).
http://www.pilotlogic.com/codetyphon/help/index.html?cross_build_for_windows_mobile.htm
http://wiki.freepascal.org/Windows_CE_Interface
http://www.lazarus.freepascal.org/index.php?topic=8175.0
No, it isn't. Delphi XE2 does apps for Win32/64, OS X, (and with the help of FreePascal, iOS), but not for CE.
You can probably use Delphi Prism to do so. There is a separate delphi-prism tag for that here at SO.
In fact, you may be able to use the Delphi IDE to build Windows CE applications, using KOL-CE library, after some adaptations.
KOL-CE - Key Objects Library CE is a set of objects to develop powerful (but compact) Windows CE/Pocket PC/Windows Mobile/Win32 GUI applications using Free Pascal Compiler. The library is based on KOL library by Vladimir Kladov (http://kolmck.net).
It targets the Lazarus IDE, but since it is a fork of a Delphi project, you may be able to use it in your Delphi IDE, perhaps after some modifications. And if you are not able (or do not have the time) to do the needed modifications, I'm quite confident that you would be pleased to use the Lazarus IDE and modern object pascal instead of switching to another language.
You need to install the FPC arm-wince cross compiler for Win32 to compile WinCE executables, but you develop your application in Windows, with the IDE.
Note that KOL is a light new set of components, very diverse to the VCL. Very powerful, but only low-level object code can be re-used, since they are not compatible with the VCL (or the Lazarus LVCL).
Using Lazarus and its native LVCL components is also available to Windows CE, is much close to the VCL classes layout, but will produce much bigger executables than KOL-CE.
For the historic perspective: no you can't in Delphi itself as of Delphi 2007.
In Delphi 2005 and Delphi 2006 could do this, targeting the .NET Compact Framework on Windows CE as Delphi contained a Delphi .NET compiler that was more compatible with the Delphi language than the current (but much more evolved) Oxygene .NET/Java platform implementation of the Delphi language.
As of Delphi 2007, the Delphi .NET compiler got retired.
Right now, Oxygene is much better as it supports a broader set of language and platform features than Delphi .NET ever did. It is less compatible with the Delphi language because the platforms it supports warranted for some language deviations that in practice are very useful.
Oxygene ships both separately (with a full feature set) and as Delphi Prism (with only the .NET portion).
For Delphi 2005/2006 you needed the CF Build Helper from Jeremy North and the Class Helpers I wrote (they are included in the CF Build Helper). A nice article on how to use both is at EDN.
Given the hoopla you had to go through back then, it is much wiser to use Oxygene if you want a language very close to the Delphi language.
For a historic overview of Pascal and Delphi like languages, read this article by Jim McKeeth.

Migrating old Delphi 7 code to Delphi XE - QForms.dcu not found

I just bought and installed Delphi XE and was hoping to compile my old D7 project there.
However, I hava a source file that "uses QForms" and that generates a "file not found: qforms.dcu" and I can find no relevant reference to what to do about that file googling around...
Any idea how to solve it?
Rgds
PM
QForms is from CLX, the Qt based cross-platform library that was introduced with Delphi 6/Kylix. So far as I know, CLX is no longer shipped with Delphi.
You need to do one of the following:
Stick with Delphi 7.
Port the code to VCL. This will tie you to the Windows platform.
Get Delphi XE2 and use FireMonkey since clearly at some point in time this code was intended to be cross-platform.

is Delphi still the same (still run with no installed libraries)?

Back when I used Delphi (win32), programs made with it would run on windows, with no need to install any runtime libraries like .NET or Java(?). Is this still the case? If not, which language can do that?
Delphi executables don't have any external dependency.
It's true since Delphi 1 up to Delphi XE.
I just wrote a post on my blog about this fact I like very much in Delphi.
http://blog.synopse.info/post/2010/09/20/Dll-hell%2C-WinSXS-directory-and-Delphi-paradise
No dll hell with Delphi applications!
Deploying a Delphi application is very easy.
If you need some database access, you could need some additional components, like the BDE, or the ODBC drivers, or whatever...
But there are a lot of stand-alone frameworks, with no external dependency, available for Delphi. We provide one Client/Server Open Source solution, using SQLite3 as database storage. And one of great feature of SQLite3 is that it doesn't need to install any client software. Our framework provide the Client/Server features, in pure Delphi.
Both the language and the IDE had some serious improvements from Delphi 1.
To name a few extentions for the language:
Support for interfaces
Records with methods
Record and class helper functions
Annonymous functions
Generics
Hinting directives
There are also some IDE improvements.
Unicode support
More integrated tools
Usage of identifiers (2011).
There are still some things missing:
64 bit support
generics still have some bugs.
It is still the case for the "normal" Delphi, i.e. Delphi for Win32. There is also Delphi Prism which targets .NET for which it is obviously not the case.
Currently there's Delphi for Win32 available, which doesn't require any runtimes and Delphi Prism (for .NET application development). Delphi for 64-bit native Windows development is promised next year.
Well, Lazarus obviously :-)
Seriously, Delphi is fine, but before you buy a recent one, if you need win9x support, check thoroughly. (since the unicode versions might no longer support that)

Is Delphi Prism a new version of Delphi .net?

First of all (before this question get down voted): I am a developer developing 99,99% of my programs using Delphi targeting Win32 (developing in Delphi 7 still, very slowly migrating to Delphi 2010).
When Delphi 2006 or 2007 (can't remember which version at the moment) came out I bought the RAD Studio edition to be able to start developing .net applications using Delphi.net and VCL.net.
I played around with it for some short time, but in the end, due to work load just kept using Delphi 7 as development platform.
When Delphi 2010 came was released, I decided to give .net a go once more, and (foolishly) bought the Studio License once more thinking the include PRISM was the previous Delphi.net (to be developed in the Delphi IDE).
Now that I have installed PRISM (and the Visual Studio 8 IDE - o horror), I am just wondering whether PRISM is a new version of Delphi.Net or not (probably not). And if I can use some of my Win32 code under Prism.
UPDATE AFTER SOME REPLIES: I keep the question open because you get more answers when a answer has not been selected yet.
I do miss the Delphi IDE though. It's all a mather of taste but having to develop in two different IDE's (where f.i. the keyboard shortcuts are different - and I don't want to give up the Delphi ones, thank you)) is not my idea of spending my development time.
Prism is a replacement for Delphi .Net - it has been developed by RemObjects and its original names were Oxygene and Chrome ( http://www.remobjects.com/ ).
Because it's much more mature than Delphi .Net in the .Net segment it now is included in Delphi RAD Studio instead of Delphi .Net.
You won't be able to use all of your W32 code, but the syntax is very similar and most algorithms will probably work without any change.
See http://prismwiki.codegear.com/en/Win32_Delphi_vs._Delphi_Prism for a detailed comparison of Delphi W32 and Delphi Prism.
No. Delphi.NET was designed specifically to be backwards-compatible with Win32 Delphi code. Prism is not. It was not developed by the Borland/CodeGear team, doesn't include VCL support, and has a handful of minor language differences. It's better to think of it as a new dialect of Object Pascal than as Delphi.NET.
The main difference was that Delphi.Net was mainly a port of the RTL/VCL to .Net, as well as an adaptation of Object Pascal to be a .Net language.
It had to include a full blown IDE with a special Delphi.Net Form Designer.
The goal was to help move a VCL Forms application to .Net with a minimum of changes, or create new application without having to re-learn the IDE and the library.
Delphi Prism is also an adaptation of Object Pascal to the .Net world but with more emphasis on being a fully fledged .Net language (even more so than C#) and much less worries on being compatible with Delphi.
It is just the language, hosted in Visual Studio, and does use whatever designer is provided by the IDE.
So in the end pure Pascal code will be very much similar, and easily ported, but rich GUI applications will need more rewriting/redesigning.
Yes and no.
Oxygene (FKA Delphi Prism) replaces Delphi for .NET, but it is not a new version of it.
They have different design philosophies and are not 100% compatible. As Francois pointed out, Prism does not include the VCL.Net. Instead it focuses completely on supporting the .NET GUI Frameworks: WPF, Silverlight, Prism, WinForms, ASP.NET, etc.
Delphi for .NET was all about migrating and backwards compatibility. Delphi Prism is all about being a full featured .NET development language and "forward compatibility."
You can create you pure business logic as code compatible between Delphi native and Delphi Prism, but all the GUI and IO code (anything that makes use of the VCL or RTL) will be specialized.
Check out the Oxidizer and ShineOn for more help in migrating and code compatibility with Delphi Prism.
No, Prism has been labeled Delphi more to make it more popular, like Delphi PHP.
It's not like Delphi.NET, with a VCL-alike etc, or even a compatible language (it uses method instead of procedure and many other deviations).
So you can see if you like it, but from what I have seen from it, having used Delphi won't be much of an help, and neither do existing codebases.

Resources