|
-
Nov 25th, 2013, 10:47 AM
#1
Thread Starter
Member
How To Run VB6 Application on Local Network Computers
I Want To Install My Program On One Computer (Server) AND Run My Program On the Other Computers on the Local Network Without Installing it On all computers . So What i should make in .OCX , DLL . I Know that it should be Registered on every computer to run the program . So What is the Solution ?
Note : I Can Run the application on all computers with installing it on every computer but i want to install it on the server only Like SQL Server
Many Thanks For All At First For Your Help
-
Nov 25th, 2013, 11:00 AM
#2
Re: How To Run VB6 Application on Local Network Computers
First... don't. Trust me. Just ... don't. It's a bad idea. SQL Server is a bad comparison because it never runs on the local system... it's a SERVICE... running on the server. It does not run on the local system at all. Now, the Management Studio does run locally, but the database and the server side stuff still actually run on the server.
When you run a VB6 app (unless things have changed) basically what has to happen is that a copy has to be retrieved locally so that it can be run... and that takes time. And ends up with a lot of network traffic going back and forth. Plus you have to install any components locally in the first place right? So why not just install the app on the machines in the first place?
-tg
-
Nov 25th, 2013, 11:09 AM
#3
Thread Starter
Member
Re: How To Run VB6 Application on Local Network Computers
Asume That I want To Run the application on one computer Only without installing it on the computer . what i must do to run the program ???
-
Nov 25th, 2013, 11:15 AM
#4
Addicted Member
Re: How To Run VB6 Application on Local Network Computers
the program can be run on any computer networked to the server. that being said, if the network computers don't have the .dll files required to run either a simple vb app (msvbvm60.dll) or any .ocx/.dll files your app requires, you will receive an error message stating those files cannot be found.
-
Nov 25th, 2013, 11:23 AM
#5
Re: How To Run VB6 Application on Local Network Computers
VB6 does not have a compiler option to produce compiled output marked for running from a network file share. The libraries included with VB6 are not marked this way either, and almost no 3rd party libraries are.
This "mark" tells Windows to load the entire file into memory and keep it there for the duration of a run. The reason is that the EXE, DLL, etc. does not simply get read once but instead parts get read and reread during the life of a run due to overlay activity (system virtual memory management).
Very few non-trivial VB6 programs do not make use of ActiveX libraries in addition to those preinstalled in Windows. The obvious examples are the control libraries that provide all but the intrinsic VB6 controls. These normally require registration, but since Windows XP there has been a way to use them without registration. This isn't directly supported by VB6, and the VB6 IDE/compiler and tools do not provide any assistance in doing so.
Even if you post-processed your application for reg-free COM and marked everything to run from file shares it is still a poor idea. Your application will require far more memory to run because everything must be resident the entire run.
As already stated above, this just isn't a good idea.
-
Nov 25th, 2013, 11:23 AM
#6
Thread Starter
Member
Re: How To Run VB6 Application on Local Network Computers
 Originally Posted by Conroy Vanderbluff
the program can be run on any computer networked to the server. that being said, if the network computers don't have the .dll files required to run either a simple vb app (msvbvm60.dll) or any .ocx/.dll files your app requires, you will receive an error message stating those files cannot be found.
I will But ALl OCX And DLL Files on the application Folder But WithOut Installing The Application So How to register all dll and Ocx From my Vb6 Code
-
Nov 25th, 2013, 11:26 AM
#7
Re: How To Run VB6 Application on Local Network Computers
In practical terms there are no Windows machines that do not have the VB6 runtimes. I even have a Win95 OSR2 VM for program testing that had the necessary runtime files either out of the box or after I had installed IE 5.x as part of initial system setup.
-
Nov 25th, 2013, 11:28 AM
#8
Re: How To Run VB6 Application on Local Network Computers
 Originally Posted by dawoud66
I will But ALl OCX And DLL Files on the application Folder But WithOut Installing The Application So How to register all dll and Ocx From my Vb6 Code
Do not do this!
It can wreak all kinds of havoc, breaking other applications on the machine. These kinds of libraries have designated places they must be installed in, "installing" them requires creating or incrementing usage counters in the registry, etc.
Just create a proper installer and use that.
-
Nov 25th, 2013, 11:41 AM
#9
Re: How To Run VB6 Application on Local Network Computers
Agreed, use an installer and install the program on all the computers then create a shortcut to the one on the network and all clients can use the same exe, once installed you can make changes/updates to the exe on the server and everyone will be able to use it without issue so long as you haven't added new controls or dlls references to the project since it was installed.
If you want it simple to where you don't need to install it on the client PCs then you need to write the program in such a way that it does not use any external OCX, Dlls beyond what would already be present on all the client computers.
-
Nov 25th, 2013, 11:47 AM
#10
Re: How To Run VB6 Application on Local Network Computers
But that has almost all of the problems of what was requested in the first place, the biggest being high network traffic and crashes due to network interruptions.
-
Nov 25th, 2013, 11:49 AM
#11
Re: How To Run VB6 Application on Local Network Computers
The way I do it is having an installer for all the needed runtimes which need to be registered and/or copied to the system directory.
This installation package is then installed on all (needed) client PCs.
The actual executable can then be placed on a network share. As long as you don't change the external components your application relies on, then you can update this executable as often as you need.
I don't see how starting the executable from the network can cause networking conflicts and/or crashes.
-
Nov 25th, 2013, 11:55 AM
#12
Re: How To Run VB6 Application on Local Network Computers
The problem is that as the program runs Windows does overlaying. This means as memory is required Windows throws away segments of code, since when needed they can be re-read from disk. If the program is on a remote file share that means network traffic, and if the network experiences a momentary interruption it means a program crash.
-
Nov 25th, 2013, 12:12 PM
#13
Re: How To Run VB6 Application on Local Network Computers
I really never experienced this and we have a dozen application running on/from big network shares.
-
Nov 25th, 2013, 12:15 PM
#14
Re: How To Run VB6 Application on Local Network Computers
It is one of those things that may work "most of the time" but isn't correct operation.
You can lead a horse to water... as they say.
-
Nov 25th, 2013, 12:57 PM
#15
Re: How To Run VB6 Application on Local Network Computers
One of my customers has 10 clients running the exe from the shared drive on the server. (This was the way they wanted it)
The program has been in use 5 days a week 8 hours a day for 14 years and counting, never had any issues
Another client tried this and had major issues, horrible lag and had to be changed. The culprit in that case was Citrix and an improper network design. Way to much traffic on the WAN
-
Nov 26th, 2013, 08:31 AM
#16
Thread Starter
Member
Re: How To Run VB6 Application on Local Network Computers
 Originally Posted by DataMiser
One of my customers has 10 clients running the exe from the shared drive on the server. (This was the way they wanted it)
The program has been in use 5 days a week 8 hours a day for 14 years and counting, never had any issues
Another client tried this and had major issues, horrible lag and had to be changed. The culprit in that case was Citrix and an improper network design. Way to much traffic on the WAN
But Citrix Not Free Program so the Customer Must Pay More
-
Nov 26th, 2013, 08:58 AM
#17
Re: How To Run VB6 Application on Local Network Computers
I don't think you understood what I posted, In the case where the customer had problems it was because they were using Citrix and dod not have the network setup correctly. Citrix was using so much bandwidth that there was very little left for the program I had written causing it to be very slow at times.
The customer thought it was my software even though I had told them they had a network issue, fortunately for me the day I had to go there the Citrix system went down and they could see that my program was actually very fast when citrix wasn't hogging the network.
Anyway the bottom line is that you really should not do this, and definitely don;t do it just to try and avoid a little work with the install. Your software will work better if it is installed and ran locally from the client computers. If you must install on the network then the results will vary based on how large your program is, what it does and more importantly network speed and how much network traffic exists on the network
-
Nov 26th, 2013, 11:12 AM
#18
Thread Starter
Member
Re: How To Run VB6 Application on Local Network Computers
Many Thanks For All And I will Not Do that
Tags for this Thread
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|