How do I distribute my application?

G

Guest

I have a windows based job logging application. The database for this sits
on a central server. There are probably about 50-100 users, distributed
across our network but at various sites. When I build my application in
visual studio in Release mode, I get an executable. How do I distribute
this? Do I create an instal package, then run this on every machine in the
company that wants to run the app? Or can I install the executable onto the
central server, then create a shortcut to this executable on the server and
everyone runs this instance??

Initially I thought I would install on everyones machine, but then how do I
upgrade them? reinstall on everymachine??

Any suggestions please on best practice here?

Thanks

Steve
 
P

Peter van der Goes

Steve said:
I have a windows based job logging application. The database for this
sits
on a central server. There are probably about 50-100 users, distributed
across our network but at various sites. When I build my application in
visual studio in Release mode, I get an executable. How do I distribute
this? Do I create an instal package, then run this on every machine in
the
company that wants to run the app? Or can I install the executable onto
the
central server, then create a shortcut to this executable on the server
and
everyone runs this instance??

Initially I thought I would install on everyones machine, but then how do
I
upgrade them? reinstall on everymachine??

Any suggestions please on best practice here?

Thanks

Steve

You don't mention which project type or template was employed, so this
article may help you decide:

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndotnet/html/xcopywininst.asp
 
G

Guest

sorry, what do you mean by "which project type was employed"? I used a C#
Windows Application template initially to build the app with. Then I have
just built this in release mode to give me an .exe. I dont know which
method of install will be best, nor really how to achieve them.

1). Install the .exe onto a central server where the db is,a nd have users
point a shortcut at this exe. Is there going to be a massive performance hit
here,with the client having to pull the application across the network as
well as the data? Also then I have the whole business with strong naming to
deal with and local security policies
2). Have the users instal the application on each client machine
individually. In this case how do I upgrade these instals at a later date,
without physically going out to each client and rerunning an instal shield?
Is there a way of puting an upgrade somewhere centrally then when the user
logs in it checks this central location for a new relase, and if there is one
downlaod and instal??

Any suggestions here are most welcome!

Thanks

Steve
 
G

gmiley

We have a similar issue here in my office. Currently we are migrating
from VFP to C# and reconsidering the entire opperation of our
application update procedures.

Currently we have our upgrade directory for each application, when we
make are nightly builds we place the new binary in the upgrade folder.
At midnight (all users are off the system by around 5:30-6pm) we have a
scheduled task that copies our applications to the branch offices.
These applications are simply accesses by Shortcuts on the client
machines. Each morning when they run their shortcut, it runs the newest
deployed build.

However, now that we are working in .Net (C#) we are looking at
implementing a wrapper application, or a launcher app. This application
checks their local application version against our build version data
and decides if the user needs to upgrade. At the point of them needing
an upgrade it informs them that the current application is out of date
and a new version is available.

We present them with a form that begins the download of the newest
binaries (executable and libraries) once this is completed the
application restarts and verifies that it is using the most recent
version, then allows the system to start.

Using the new method allows us to make critical changes durring the day
without the fuss of making sure everyone is off of the system. It will
simply notify them that a new version exists and they should complete
and transactions, save their data and restart their application (or
click an update button).

This may, or may not, be a valid solution for you, but in our
environment it is one that provides us with the most flexability and
consistancy.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top