Solved

Running a Centralized, Shared Program from the Network

Posted on 2004-08-16
11
229 Views
Last Modified: 2011-10-03
Hi,

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 VB.net 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?

Thanks,

Rougy
0
Comment
Question by:Rougy
  • 5
  • 5
11 Comments
 
LVL 7

Expert Comment

by:natloz
Comment Utility
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?
0
 

Author Comment

by:Rougy
Comment Utility
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.
0
 
LVL 7

Expert Comment

by:natloz
Comment Utility
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?
0
 

Author Comment

by:Rougy
Comment Utility
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 VB.net 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.
0
 
LVL 7

Expert Comment

by:natloz
Comment Utility
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)
0
Find Ransomware Secrets With All-Source Analysis

Ransomware has become a major concern for organizations; its prevalence has grown due to past successes achieved by threat actors. While each ransomware variant is different, we’ve seen some common tactics and trends used among the authors of the malware.

 
LVL 41

Assisted Solution

by:graye
graye earned 125 total points
Comment Utility
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
0
 

Author Comment

by:Rougy
Comment Utility
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.
0
 

Author Comment

by:Rougy
Comment Utility
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.
0
 
LVL 7

Expert Comment

by:natloz
Comment Utility
Have you registered the MSFlexGrid dll on the Users computer in System32 seperately from MSI installation? Try that if not.
0
 
LVL 7

Accepted Solution

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

Author Comment

by:Rougy
Comment Utility
You were both very helpful and I appreciate it.  
0

Featured Post

What Should I Do With This Threat Intelligence?

Are you wondering if you actually need threat intelligence? The answer is yes. We explain the basics for creating useful threat intelligence.

Join & Write a Comment

This article explains how to create and use a custom WaterMark textbox class.  The custom WaterMark textbox class allows you to set the WaterMark Background Color and WaterMark text at design time.   IMAGE OF WATERMARKS STEPS Create VB …
Creating an analog clock UserControl seems fairly straight forward.  It is, after all, essentially just a circle with several lines in it!  Two common approaches for rendering an analog clock typically involve either manually calculating points with…
Internet Business Fax to Email Made Easy - With eFax Corporate (http://www.enterprise.efax.com), you'll receive a dedicated online fax number, which is used the same way as a typical analog fax number. You'll receive secure faxes in your email, fr…
Polish reports in Access so they look terrific. Take yourself to another level. Equations, Back Color, Alternate Back Color. Write easy VBA Code. Tighten space to use less pages. Launch report from a menu, considering criteria only when it is filled…

763 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

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now