Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations bkrike on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Accessing a VFP exe over VPN

Status
Not open for further replies.

jrajesh

Programmer
Aug 12, 2001
72
HK
Hi,
The VPN is on a 2MB SDSL line and the VFP exe resides here.
The client has a 20:1 512KB ADSL line.
Connecting and launching the Exe takes extremely long.
Could someone please advise the possible areas that can be tweaked to make the loading of the EXE faster?
Thanks and Regards,
Rajesh
 
What actions occur as the exe starts up?

If there are graphics, minimize them and their complexity.

set bitmap off (might need to twaek the code to deal with is since the screen then isn't updated) and see if that helps.
 
jrajesh,

You could create a launcher program that simply checks the server EXE and compares it with a copy on the client hard drive. If the EXE is different (size, date, time) or non-existent the launcher program copies down the new version.

Once it's done copying (or just comparing) the launcher program fires up the local EXE. This means it only has to take the loading hit once when it detects a new build.

Andy
 
Baltman and Andy:
Thanks for your responses.

Baltman:
I'll try setting BITMAP off. But, actually there aren't many pictures associated with the exe.

Andy:
Correct me if I'm wrong. But, I thought that it isnt' possible to copy between your local pc and the VPN.
Is it possible to access the data on the VPN from a local exe? If so, this may be the ideal solution.

Thanks to you both again.

Rajesh
 
BITMAP isn't graphics specific. It needs to be set in the config file. From help (Special Terms for Configuration Files):

Specifies whether Visual FoxPro first writes screen or form updates to an off-screen bitmap, and then performs a bit block transfer (bitblt) to the screen. BITMAP = OFF can improve performance when application are accessed using Windows Terminal Server clients.
Default is BITMAP = ON
 
Yes, VPN is just an extension of the network. You can map drives and everything as you would usually do it in order to access the data...however, that having been said, unless your application has been designed for WAN I think you are still going to have speed issues...for now put the exe local and get the data from the server, however given that most fo the data processing will happen on the client-side (I am assuming here not really knowing how you have created your app) you will still find that performance is probably poor at best. What you really need to do to improve performance is...

A: rewrite your app with n-tier design in mind so that you can create a data server to serve up only those records that are needed by the client (thus decreasing the amount of information sent over the wire)

B: use something like Remote Desktop, PC Anywhere, Citrix, VNC, etc. (terminal emulation/remote control - as was being implied by baltman) ...these solutions would allow your application to run with little to no change and performance would most likely be quite acceptable given the environment you are targeting. (VNC is free and you may already have ability to do Remote Desktop/Terminal Services depending on your window's server and client OS's - just giving you some stuff to go on here cause it is really somewhat outside the scope of a forum for VFP)

boyd.gif

craig1442@mchsi.com
"Whom computers would destroy, they must first drive mad." - Anon​
 
Baltman and Craigsboyd,
Very grateful for your explanations.
I'll try and implement what you've suggested.
Thanks again,
Rajesh
 
Craig,

My situation uses HOBLink, a java Internet based program which does not allow for interaction between the local PC and the server(s) which are running Server 2003.

I'm just on the user side of HOBLink, but it seems to work well.


If I had a local machine connected by a thin pipe, I'd definitely copy the exe to a local temp folder using a 'copy' exe, and then launch the main exe locally to whatever extent that's possible. The trick would be to limit bandwidth use. Don't re-query/update/save more than needed, and try to use idle time for update/saves to the extent possible. There are been some recent articles on using bindevent() and idle time processes if you search around.

Brian
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top