With windows, you have a thing called the registry. That's stored locally. Unless you're running a fancy MS-only network, you'll have to have the registry always be local, and always be up to date with the current programs install.
For example, if you have a network-installed program, //server/program1/ let's say, and you installed it from PC1 running Windows, then PC1 has a registry entry (like 100-200 registry entries actually) pointing to //server/program1/modules/ and //server/program1/plugins/ and all that crap so when the program is run, it looks to the registry to see where it actually is on the hard drive. Some programs can rebuild the registry entries if they are damaged or simply not there. For example, let's say you have //server/steam/ but never installed steam on PC1. When you run //server/steam/steam.exe, Steam will see there are no registry entries, and fix that.
However, this is far from Ubuntu and therefore very off topic. Enough rambling from me.
