Here's what I've figured out from Wikipedia, and please correct me if I'm wrong:
.NET is the original and most popular CLR (although there are other implementations of it, including cross-platform versions like Mono).
Visual Studio creates a program containing CIL code that passes that code through the .NET CLR (if installed) to convert it to native machine code that matches the current environment, allowing the program to run on any machine that the CLR will run on
(for .NET 4.0, that would be XP SP3 or greater). But the cost of this portability is that the code needs to be converted every time it's run, decreasing load time.
So, which one of these paths seems like the best way to go:
Keep using .NET and either packaging the framework with my installers or instructing users to install .NET 4.0 if they don't have it.
Convert the CIL program to machine code using ngen BEFORE distributing it, so .NET is no longer required. (Is this possible, or would the .NET libraries still need to be installed, defeating the purpose?)
Ditch .NET and all its wonderful libraries in favor of a language/compiler (like C++ or maybe C# with some compiler other than VS) that creates native code. (Don't want to do this, but I'm throwing it out there.)
Is .NET the way to go? I love the libraries but I don't like that .NET needs to be installed (annoying for XP users and computers th
View Complete Post