1

Do we need to install complete donet frame work for just executing .net application, can't we just embedded the CLR in the Executable itself.

sameer
  • 1,635
  • 3
  • 23
  • 35

2 Answers2

6

You have 2 options here:

  1. Something called "Client Framework", which is a trimmed-down version of the .Net Framework. It contains only certain assemblies, and is therefore more limited, but it might be enough.
  2. Using a "linking" tool to embbed the .Net Framework DLLs into your application. Although this might work, it is not recommended. Updates to the Framework will not be used, versioning issues when other versions of the .Net Framework are installed, or other applications that use the Framework are running...

Basically, based on the latest statistics, more than 90% of Windows computers already have .Net Framework 2.0, and more than 65% have .Net Framework 3.5 SP1. This means that you shouldn't have a problem deploying your application without the Framework...

SaguiItay
  • 2,145
  • 1
  • 18
  • 40
  • 1
    I would not start down the track suggestion #2 - ouch. Due to the interdependencies of the various assemblies in the framework, it would be a long slow laborious task to make sure you had it right, and you would probably end up shipping most of the framework anyway. – slugster Jan 24 '10 at 11:04
0

If the size of the framework is an issue, then consider using Silverlight - it has a way smaller footprint, and it incorporates a good subset of the framework functionality.

According to the statistics provided by @SaguiItay, you would very few issues if your app targeted the .Net 2.0 framework (90% install base), as most users would not have to install anything extra. Although if you did that you would miss out on using some cool features such as LINQ.

slugster
  • 49,403
  • 14
  • 95
  • 145