Sorry for the unclear title of the thread, but recently I looked at vs2008 ~ vs2010 express, and I think all applications written using any of these compilers would need some of the redistributable packages (e.g. vs2008 redist/vs2010 redist). The question is, can I write an app that doesn't need those redistributable files?
(my guess is that can't be done as I recently inspect all installed games in my pc and found out that they always have those files in their folders )
Technically yes it can be done - just don't use anything that uses the Microsoft Visual Runtime (aka MSVCRT), is this practical, no. But, you can statically link the runtime with your application which means the user doesn't ever install it as it is already inside your exe. A game on the other hand is different as you do need to ship things such as the DirectX runtime you used etc. in which case shipping the MSVCRT is negligible. If you do decide to statically link the MSVCRT make so you only ship the exe that has linked to the release MSVCRT, as the debug version isn't allowed without Visual Studio.
Btw, a better title would be something like "Do I have to ship the C runtime library?".