I'm developing an application using Visual C# Express Edition - what is the downside to using the express editions? Are there any limitations on what I can build and release? Will my users be able to tell I'm using the Express Edition?
Here is a huge comparison chart of all versions of Visual Studio, from Express until Team System.
It won't impact your users, other than by making you less productive by prohibiting add-ons such as ReSharper, TestDriven.NET etc and not having some of the built-in features of the commercial editions.
To put it another way: if a word processor didn't have a spell checker, you could still make sure that your documents were spelled correctly, so readers wouldn't know - but it's a lot quicker (usually!) if the tool has it built in...
- No AddIns whatsoever - no ReSharper, no TestDriven.net, no VisualSVN, no nothing
- Server Explorer does not support remote databases
- No support for solution folders
Express targets only a single Framework - Express 2008 targets .net 3.5 only.(Edit: I was wrong, Express 2008 indeed supports multi-targeting)- Reinstalling Express may require re-registration which is free, but can be shut down any time from Microsoft
Apart from that, it's fine. It uses the same compiler to generate the same code, you just don't get all the Time-Saving tools that VS Professional offers.
VS Express can do "most" of what the higher editions can do until you start getting into more advanced things such as trying to install 3rd party components and get full integration, adding database projects, integration into 3rd party systems, etc. On that note even VS Standard lacks several of these features so you'd be looking at Pro (at a minimum) to get a fully robust and feature-rich edition.
no Mobile Device support - one of the most important features, for me :o)
The Express debugger does not allow Attach to Process.
Reference http://en.wikipedia.org/wiki/Microsoft_Visual_Studio_Express:
The ability to attach the debugger to an already-running process has also been removed, hindering scenarios such as writing Windows services and re-attaching a debugger under ASP.NET when errors under the original debugging session cause breakpoints to be ignored.
I can live with everything else but that.
Only one language is supported. You can't have an application in C# and a library in C++ in the same solution, for instance.
Also, third party ADO.NET providers are not supported in the designers
No MFC visual gui builder for C++.
EDIT
Oops - just read the C# tag. I'll leave this up though in case it comes up in a search for anyone else who might also be using c++