Have very recently started a new position. One of my key challenges is a C# WinForms application (let's call it AppX) that causes a lot of non-planned work.
The main reason for this is that it needs to be deployed to several hundred branch offices. Currently, this is done via GP update or bespoke application. Both of these methods are unreliable and means we can't effectively deploy version upgrades.
Bit of background to what the software needs to do and some of the technical issues / background:-
- AppX needs to produce results in real time
- AppX needs to connect to a SQL server (express or full edition) which is physically located in the branch office
- AppX needs to ensure that after a version upgrade all remote sites are on the same version
- AppX can't be deployed via a thin client solution such as Citrix or Remote Desktop services
- The headquarters network can see the entire branch office network and connect into their SQL servers
My initial thoughts were
ClickOnce deployment -- however there seems to be some suggestions that there may be some issues with conflicts of the .Net framework with other software
Deploy the solution as a web app at the headquarters which connects back into the remote SQL server - technically I'm not sure how I would go about this
I guess that this is something that others may have come across so I would be interested to know if there are any other suggestions on how to approach this