Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

Running a Centralized, Shared Program from the Network

Posted on 2004-08-16
11
Medium Priority
?
237 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
[X]
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
11 Comments
 
LVL 7

Expert Comment

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

Author Comment

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

Expert Comment

by:natloz
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?
0
Technology Partners: 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

by:Rougy
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 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
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)
0
 
LVL 41

Assisted Solution

by:graye
graye earned 375 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
0
 

Author Comment

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

Author Comment

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

Expert Comment

by:natloz
ID: 11814193
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 375 total points
ID: 11814208
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
ID: 11814258
You were both very helpful and I appreciate it.  
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

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…
1.0 - Introduction Converting Visual Basic 6.0 (VB6) to Visual Basic 2008+ (VB.NET). If ever there was a subject full of murkiness and bad decisions, it is this one!   The first problem seems to be that people considering this task of converting…
Visualize your data even better in Access queries. Given a date and a value, this lesson shows how to compare that value with the previous value, calculate the difference, and display a circle if the value is the same, an up triangle if it increased…
Have you created a query with information for a calendar? ... and then, abra-cadabra, the calendar is done?! I am going to show you how to make that happen. Visualize your data!  ... really see it To use the code to create a calendar from a q…
Suggested Courses

715 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