I'm working on a program in Visual C# 2010 for a friends company and it does not have any .NET installed. I know you can download .NET 3.5 or 4 from Microsofts site, but the accounts that the program will run on will not be able to install anything. Is there a DLL I can download and then place in the programs folder to make it work? Or any other alternative that does not include installing things or downloading things.
Edit: Disregard the 5mb limit: I had mean that if I have to download any program on the computer the program will be executed on, it should be below 5mb. The final application can be double or triple the original programs size.
Let me answer this directly so that you don't waste neither your time nor your friends: No there isn't other way other than properly installing .NET (or rewriting your application with unmanaged C++ code which is unlikely something you are willing to do). Not to mention that most Windows PC should already have at least .NET 3.5 installed through Windows Update.
The <a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=e5ad0459-cbcc-4b4f-97b6-fb17111cf544&displaylang=en" rel="nofollow">.NET 4.0 Client Profile</a> is 41MB and that's the minimum you get away with.Answer2:
While there are some options for running .NET applications without installing the framework properly (e.g. <a href="http://www.vmware.com/products/thinapp/" rel="nofollow">VMware ThinApp</a>), I very much doubt that you'll find anything that fits in 5MB...
Heck, just mscorlib from .NET 4 is 5MB, then System.dll is nearly 3.5MB.Answer3:
If your application can run on top of Mono, you can try using mkbundle, normally the resulting exe file is relatively compact.Answer4:
Xenocode (now called <a href="http://spoon.net/Studio/Features.aspx" rel="nofollow">Spoon Studio</a>, I believe) allows you to deploy a single executable without previously installing the Framework.
It uses some kind of virtualization to achieve this. I don't believe it would fit in just 5 megs - but I might be wrong.Answer5:
If the framework has not been installed, there will be no interpreter/jitter and .NET programs will not run.
You need to install the framework in order for .NET software to run.