Results 1 to 10 of 10

Thread: New to Network Programming

  1. #1

    Thread Starter
    New Member
    Join Date
    Jun 2006
    Posts
    11

    New to Network Programming

    I have a VB6 app that is like an electronic textbook. It displays .rtf files with the text, allows uses to imput parameters and then shows graphs of calculated values, displays reports and offers help files. It uses several third-party components for the graphing and an Access db to store default calculation values.

    I currently use Setup Factory 5.0 to install the app along with the necessary dlls. I now have a customer that wants to use the app across his network to avoid installation on each of his pcs.

    How can I make this app able to run across the network? (ie. Store all the files on the server but execute the app from the clients?)

  2. #2
    I'm about to be a PowerPoster! Hack's Avatar
    Join Date
    Aug 2001
    Location
    Searching for mendhak
    Posts
    58,333

    Re: New to Network Programming

    I am confused by your question. First you state
    Quote Originally Posted by chief7
    I now have a customer that wants to use the app across his network to avoid installation on each of his pcs.
    and then go on to say
    Quote Originally Posted by chief7
    but execute the app from the clients?)
    If your program is going to be executed by client machines how are you avoiding installation on each of the PCs?

  3. #3

    Thread Starter
    New Member
    Join Date
    Jun 2006
    Posts
    11

    Re: New to Network Programming

    That is exactly my problem. I think (waiting on clarification) this customer wants to give his users access to my program via a file share, but the users would still execute the program on their machines.

    I tried this scenario yesterday and found that if i place the required dlls in the root application directory they are found but I am receiving what I believe is a database error.

    "Runtime error '430' class does not support Automation or does not support expected interface"

    I tried updating the MDAC, but that didn't help.

    Is this even possible to do?

    What other ways can give access to a program without installing on each client?

  4. #4
    I'm about to be a PowerPoster! Hack's Avatar
    Join Date
    Aug 2001
    Location
    Searching for mendhak
    Posts
    58,333

    Re: New to Network Programming

    Quote Originally Posted by chief7
    What other ways can give access to a program without installing on each client?
    You are not going to get around installing client side files.

    You may have your database on the network.

    You may have your .Exe on the network.

    But runtime and dependency files will need to be on the client machines.

  5. #5

    Thread Starter
    New Member
    Join Date
    Jun 2006
    Posts
    11

    Re: New to Network Programming

    What ways can you run a program from a client on the server? Is terminal services the only way?

  6. #6
    I'm about to be a PowerPoster! Hack's Avatar
    Join Date
    Aug 2001
    Location
    Searching for mendhak
    Posts
    58,333

    Re: New to Network Programming

    Quote Originally Posted by chief7
    What ways can you run a program from a client on the server? Is terminal services the only way?
    If you are dealing with a VB6 .Exe file, then the required runtimes and dependency files must be installed on the client machines. There is no way around that. All of those third party components and .Dll files that you mentioned in your first post have to be installed and registered on the client in order for your .Exe to work, regardless of where the .Exe file resides.

    If you switched languages and developed your program in something that did not require those dependency files, then you wouldn't need to be concerned about the client side.

    Another possibility which would avoid client side installations would be to scrap the whole idea of a desktop interface, and redo what you have as a web page that could be run on their internal intranet.

  7. #7
    PowerPoster
    Join Date
    Feb 2006
    Location
    East of NYC, USA
    Posts
    5,691

    Re: New to Network Programming

    Quote Originally Posted by chief7
    What ways can you run a program from a client on the server? Is terminal services the only way?
    Terminal Services or VNC would work, but that would invent a new level of "inelegant". You'd be using the client as a dumb terminal, and you'd have to play a lot of games with your program to allow multiple copies of it to run on the same computer at the same time. If you charge by the gray hair it would be cheaper for your customer to buy a new computer for every user.
    The most difficult part of developing a program is understanding the problem.
    The second most difficult part is deciding how you're going to solve the problem.
    Actually writing the program (translating your solution into some computer language) is the easiest part.

    Please indent your code and use [HIGHLIGHT="VB"] [/HIGHLIGHT] tags around it to make it easier to read.

    Please Help Us To Save Ana

  8. #8

    Thread Starter
    New Member
    Join Date
    Jun 2006
    Posts
    11

    Re: New to Network Programming

    i tried placing all the required .dlls and .ocxs in the root application directory and it worked the first day without anything installed or registered on the client machine. i simply installed the software on the server and executed the program via a network share.

    i was able to do this on clean installs of win98, win2000 and winXP. the next day the xp machine was giving "Runtime 7: Out of Memory" errors, so I downloaded and installed service updates and then it worked again. today the win98 machine is giving the same "Runtime 7" error and the win2000 is reporting a missing ocx.

    why would this work last friday but not work today?

  9. #9

    Thread Starter
    New Member
    Join Date
    Jun 2006
    Posts
    11

    Re: New to Network Programming

    I also found this on microsofts site:

    http://msdn.microsoft.com/library/de...sidebyside.asp

    can't this DLL/COM redirection be used to avoid client side installation of dlls and ocxs?

  10. #10
    PowerPoster dilettante's Avatar
    Join Date
    Feb 2006
    Posts
    24,487

    Re: New to Network Programming

    Yes, it can. But it requires that clients be WinXP (preferably SP2) or later (Win2003, Vista).

    VB6 programs deployed in this fashion can be run direct from CD, USB flash devices, etc. as well.

    I have a small program that can do the work for you if you feed it the target application's VBP file (and of course everything else in the project folder). It hasn't been perfected yet, and it has two small flaws I'm aware of:

    • It does not yet handle "nested" ActiveX libraries (i.e. a program using a compiled OCX that uses another OCX or DLL).
    • It includes an XP Styles element in the application manifest, so your program must properly call InitCommonControls() very early. "Very early" means prior to your main form loading (and even its Load event). One place to do this is in the form's Initialize event handler.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width