views:

27

answers:

2

We have an app that currently installs itself into 'program files\our app', and it puts the internal data files into the common Application Data folder. This means the program is available to any user on that particular PC.

Now we want to make a multi-user version of this program, multiple PCs accessing the program at the same time across the network.

In the bad old days, under XP, we'd just have the user who installed the app 'share' the app directory and off we'd go. In principle, is this still the 'right' way to do it under Vista/Windows 7?

We'd like to do this 'properly' and be as compliant as possible! Is there a recommended 'Microsoft' approach for doing this, or is it largely down to whatever we can get away with and subsequently support (hah!). I've tried researching this on the MS websites but not found anything too helpful at all - it'd be really useful to have a 'if you're trying to install this kind of thing, put it here' type guide for developers!

A: 

I think the recommended way to deal with this is one of the following:

  • Package the application as an MSI and distribute it via group policies to all machines on the domain. Yes, this will install it on every machine but that's usually how it should be done.
  • Install the application once on a server with terminal services and push a shortcut for running the program on that server to every client machine. You can transparently use single applications on a terminal server. Afaik you can even associate file types with those on the client machines.
Joey
Thanks... wow. That's just depressing, really. We'd be selling the app to small companies where there would probably be no proper domain or active directory control - just ordinary windows peer-to-peer networking and file-sharing. In our most obvious use case, the program gets installed once on a machine and then later on the company buy a second machine and want to 'share' the original app and its data. Maybe we're going to have to use a homebrew kind of method after all! :-)
robsoft
@rob: Well, you probably can still do it with shares. It's just that in larger environments this gets a little cumbersome to maintain.
Joey
A: 

Reading between the lines from other resources, and trying to make sense of it all, I've decided that the 'right' place to put the program data for this stuff really will be in the AppData (Roaming) folder, and the right place to put the program binary files themselves really will be the Program Files folder of the host computer, which I can then share out.

robsoft