Maybe it is just me, but deploying .NET desktop apps to client machines seems to be a more involved process than with other frameworks. Those I've written and those I've purchased as 3rd party applications seem to require more separate downloads. Whether it be one click downloading, upgrading the .NET framework, or uninstalling/reinstalling a crashing app because some part of the .NET framework or app did not download/install properly.
If I want to hire a developer to write a windows based desktop application that is downloaded once, and installs without additional downloads, what other languages can I look too? The app will need its own installer, which I'm guessing the developer should have a license to distribute with their app.
One disadvantage I believe I'll be loosing is that .NET developers are probably some of the most affordable. However, I'd like to improve the user install experience. Any feedback is welcome.
The best way to ensure that the .NET framework is available on client computers is to use an older version of the framework, such as .NET 2.0.
Most people or companies ready to pay for software have a version of Windows recent enough (or have Windows Updates turned on).
Of course, not all apps are written in .NET. Visual C++/MFC, Delphi and Qt come to mind.
Regarding the installer, the free Inno Setup has become extremely popular.
WIX is also very popular (and free as well). This one target .MSI installers.
I've been developing product applications professionally for 20 years now (OMG!) and I'm extremely careful to deployment considerations such as reducing the required dependencies. For that reason, I've resisted some time to the .NET sirens. But this is the past: Stick to .NET 2.0 and you won't have any problem: Vista and Windows 7 (which means nearly all computers) install it by default (actually v3.0+). WinXP owners have .NET 2.0 if they ever Windows Updated their computers in the past x years.
To get that sort of install experience you would need to turn to things which compile to native, for example:
- C/C++
- Delphi
ALTHOUGH I am not sure what sort of negative experience you had so far with .NET clients... current Windows versions have at least .NET 2 or even .NET 4 pre-installed...
精彩评论