Running a Centralized, Shared Program from the Network

Posted on 2004-08-16
Last Modified: 2011-10-03

This was easy in VB6.

I just marked the *.exe as "shared" and had everyone in the plant put a shortcut to it on their desktops.

I need to do the same thing with my new programs, but already I'm having trouble.

Does anybody have, or have some links to, information that will help me walk my way through this?


Question by:Rougy
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 5
  • 5

Expert Comment

ID: 11813496
Have you installed the DOTNET framework on all the machines you intend to run the program on?
This would be a necessary step (unless you are running the app on terminal server)

You also need to make sure that MDAC 2.7 is installed on the machines (it is required for database activity) and it isn't included in Framework.

What sorts of problems are you experiencing?

Author Comment

ID: 11813514
So far, neither of those things are a problem.

What I'm trying to do is have a centralized *.exe that everyone can use at the same time.

I got it to work with two previous programs, but I'm having fits with this one.

It had something to do with the security settings, but I was wondering if there was a basic "template" for doing it more professionally.

I just installed it on another computer, and there were problems - program wouldn't run.

Expert Comment

ID: 11813546
Is there an error message? This would possibly help with a diagnosis.

I understand what you are trying to do.
You have one computer with the application installed and you are copying shortcuts to all of the desktop computers and hoping it will launch the program locally on their machines (without having to install the exe).

When you say neither of those things are a problem - are you saying that they are installed on the client machines or not?
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!


Author Comment

ID: 11813613
There is an error, and I'll try to get it, soon.  Big plant, and it will take me a while to get to the place where the user computers are.

I've installed programs on our network drive before, two of them, and that seemed to work.

This time, though, it's not working.  

When the program is on the user's machine, and run from the user's machine, it works fine.  But this complicates the "updates" that I'll invariably have to make to the program.

I'm using a legacy "flexgrid" ocx, and that's not getting registered on the network drive.

I appreciate your help.

Expert Comment

ID: 11813667
From what I understand about networks and launching an EXE the way you are, I believe you would need to have the "Legacy" dlls registered on the local machine since that is where the exe is actually Executing from. It is no different than having an EXE sitting on your C: drive on your local machine. You need to install DLLs locally just as you would have to on your server to run the app. When you run the program on a client machine, it will not look on the server for the appropriate Dlls/OCX, but will look for them on whichever client is trying to run the EXE.

Once all of the appropriate DLLs are in place on the client machine, you should just be able to update the EXE on the server when a change is made (unless more DLLs are integrated that are not within the DotNet framework)
LVL 41

Assisted Solution

graye earned 125 total points
ID: 11813699
Whoa... Time out

Actually.... that's not even was "shared" does in VB6.   The "Shared" attribute is designed to mark programs so that they don't get accidently uninstalled when a related application is uninstalled.  For example, a component that is used by 2 programs would be marked as shared so that an unistall of one of them it wouldn't remove the common component (required by the other one).  It has nothing at all to do with making an application available from a shared network location.

OK, now that that's out of the way...

VB.Net is very well suited for what you're trying to do...  VB.Net normally doesn't require anything to be installed on the client PCs other than the .Net Framework itself.  Now, you're back to just putting a shortcut on the client PC's desktop (via a login batch, email, or whatever).

There *is* however, one "gotcha"...  The default permissions for the .Net Framework will block the execution of most applications when run over a network share.  This will require you to adjust the .Net Permission (from the Control Panel, Administrative Tools, Microsoft .Net Framework Wizards, Adjust .Net Security).

we have a similar scenario (a network share with a bunch of programs), so we have adjusted the permissions for "local Intranet" to "full trust".  Since this only has to be done once, it makes deployment of applications as simple as emailing the users a shortcut

Author Comment

ID: 11814042
Installing the *.msi on the user's computer, then linking to the *.exe on the network gives me this error:

File or assembly name AxInterop.MSFlexGridLib, or one of its dependencies, was not found.

Though the program does run from the user's hard drive.

Author Comment

ID: 11814170
This was down and dirty, but I dumped all of the files from the bin directory into the network directory and it seems to be working okay, so far.

Expert Comment

ID: 11814193
Have you registered the MSFlexGrid dll on the Users computer in System32 seperately from MSI installation? Try that if not.

Accepted Solution

natloz earned 125 total points
ID: 11814208
Usually if the File is not found locally it will look in the Program directory for missing dlls I believe

Author Comment

ID: 11814258
You were both very helpful and I appreciate it.  

Featured Post

Creating Instructional Tutorials  

For Any Use & On Any Platform

Contextual Guidance at the moment of need helps your employees/users adopt software o& achieve even the most complex tasks instantly. Boost knowledge retention, software adoption & employee engagement with easy solution.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Article by: Kraeven
Introduction Remote Share is a simple remote sharing tool, enabling you to see, add and remove remote or local shares. The application is written in VB.NET targeting the .NET framework 2.0. The source code and the compiled programs have been in…
If you need to start windows update installation remotely or as a scheduled task you will find this very helpful.
Attackers love to prey on accounts that have privileges. Reducing privileged accounts and protecting privileged accounts therefore is paramount. Users, groups, and service accounts need to be protected to help protect the entire Active Directory …
This video shows how to use Hyena, from SystemTools Software, to update 100 user accounts from an external text file. View in 1080p for best video quality.

739 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question