Fog Creek Software
Discussion Board

Does Delphi for .net compile standalone exe's?


I'm considering using Delphi for our next version of software.

Any Delphi users out there who've used it and know if it'll compile a standalone exe (say <500kb for a "hello world" app) ?

I don't expect to get all the .net stuff in a standalone exe. Just wondering if it'll do it.

(I emailed borland last week. No response, other than an autoresponder msg that I'd get a response in 2 days).  Not an auspicous beginning).

Mr. Analogy
Monday, April 05, 2004

Delphi 8 for .NET produces exactly the same kind of EXEs as C# does... they require the .NET framework to be installed.

If you want standalone applications, then you're stuck with win32 no matter what language you use.  The advantage of Delphi is that you can (generally speaking) get both a standalone win32 application and a .NET application from the same source code.

Monday, April 05, 2004

Delphi 7 will produce a standalone exe which doesn't require any runtime, it comes with a rich set of standard libraries (vcl's.)

Tony Edgecombe
Monday, April 05, 2004

The VCL has more components than the .NET framework.

The components are of higher quality and have a lot less bugs.

Monday, April 05, 2004

"Delphi 8 for .NET produces exactly the same kind of EXEs as C# does... "

You sure about that?  I thought Delphi 8 just had the _option_ to compile to .NET?

Monday, April 05, 2004

Delphi 8 is for .NET only and the entire CLR must be installed on the target machine for the D8 app to run.

Mitch & Murray (from downtown)
Monday, April 05, 2004

However, Delphi 8 is supposed to include a copy of Delphi 7, which produced standalone win32 EXEs.

Monday, April 05, 2004

Sort of a tangential question not really deserving of another thread.  If I use NET 2003 to create a C++ application, do clients still need the .NET runtimes to run the exe?  All the machines I have availible to test have the runtime installed.

Monday, April 05, 2004

If you're writing managed code then you need the CLR.

John Topley (
Monday, April 05, 2004

If you're using managed C++, you need the CLR installed.

If you're writing unmanaged C++, you don't need the CLR.

VS.NET gives you the option to do either.

Chris Tavares
Monday, April 05, 2004

Delphi 8 compiles to 100% managed MSIL code, and as such require the .NET framework to run.

The VCL can be linked into the executable, or linked dynamically using run-time packages, just like in Win32.

If you're linking statically, Delphi will output a standalone EXE.

If you're using run-time packages, you'll need to redistribute those with you application, as well as any packages they use in turn. No surprise here.

If you're creating a run-time package, it is my understanding that you need to redistribute Borland.Delphi.Dll in addition to your own package. Allen Bauer explains this in his blog here:

Big B
Monday, April 05, 2004

*  Recent Topics

*  Fog Creek Home