Microsoft Visual Foxpro 8.0

kbupdate.info
Daily Updated!

  1. Mar 23, 2021 This package updates the Microsoft Windows Common Controls, mscomctl.ocx and comctl32.ocx, found in Microsoft Visual FoxPro 8.0 Service Pack 1. Please refer to the security bulletin for additional details.
  2. Microsoft Visual FoxPro 8.0 is an extremely powerful tool for quickly building database applications and components. Its data-centric, object-oriented language offers developers a robust tool set for building database applications - for the desktop, as a client/server solution, or on the Web - by using components and XML Web services.

Microsoft Visual FoxPro version 8.0. From Web Based Energy Information and Control Systems: Case Studies and Applications by Barney L. Capehart, Lynne C. Fairmont Press, 2005: The On Entry and On Exit options were introduced with Visual FoxPro. From The Visual FoxPro Report Writer: Pushing it to the Limit and Beyond. Aug 30, 2007 Microsoft Visual FoxPro 8.0 Service Pack 1 (SP1), which provides the latest updates to Visual FoxPro 8.0. SP1 combines various enhancements and stability improvements into one integrated package.

chronological list: 2021 | 2020 | 2019 | 2018 | 2015 | 2014 | 2013 | 2012 | 2011 | 2009 | 2008 | 2007/12118 ... 2003

alphabetical list: ABCDEFGHILMNOPRSTUVY

This list contains all of the known Microsoft Knowledge Basearticles, howtos, fixes, hotfixes, webcasts and updates of Microsoft Visual FoxPro 8.0 starts with letter H that have been released. The list is daily updated.

  • 244677 How to create a desktop shortcut with the Windows Script HostQ244677 KB244677September 29, 2020
  • 814184 How to update data by using the TableUpdate function with the CursorAdapter object in Visual FoxProQ814184 KB814184April 20, 2018
  • 259646 How to use the DateTimePicker control in Visual FoxProQ259646 KB259646April 20, 2018
  • 247370 How to pass parameters to a SQL Server stored procedureQ247370 KB247370April 20, 2018
  • 246088 How to apply rich text effects in Visual FoxPro reportsQ246088 KB246088April 20, 2018
  • 241424 How to export memo fields with other field types to a text file with Visual FoxProQ241424 KB241424April 20, 2018
  • 199131 How to add a Visual FoxPro database to SQL Server as a linked serverQ199131 KB199131April 20, 2018
  • 193952 How to troubleshoot to resolve suspected corruption in Visual FoxProQ193952 KB193952April 20, 2018
  • 188403 How to programmatically modify report fields in Visual FoxProQ188403 KB188403April 20, 2018
  • 175173 How to print a general field by using Word and Visual FoxPro 9.0 or earlier versionsQ175173 KB175173April 20, 2018
  • 170146 How to access ImageList from TreeView and ListView control with Visual FoxPro codeQ170146 KB170146April 20, 2018
  • 156547 How to manually register a custom OLE serverQ156547 KB156547April 20, 2018
  • 154741 How to transmit and receive binary data by using the VFP MSComm32 controlQ154741 KB154741April 20, 2018
  • 145817 How to format a date or time value to query an SQL table in Visual FoxProQ145817 KB145817April 20, 2018
  • 140652 How to capture input in a combo box in Visual FoxProQ140652 KB140652April 20, 2018
  • 140525 How to receive from the serial port by using MScomm32.ocx in Visual FoxProQ140525 KB140525April 20, 2018
  • 139526 How to send to the serial port by using Mscomm32.ocxQ139526 KB139526April 20, 2018
  • 130307 How to use null values in Visual FoxProQ130307 KB130307April 20, 2018
  • 115476 How to encrypt Visual FoxPro .dbf filesQ115476 KB115476April 20, 2018
  • 959134 How to Convert a Microsoft Visual FoxPro Database into a Microsoft Access Database (MDB)Q959134 KB959134April 19, 2018
  • 244675 How to use the Windows Script Host to read, write, and delete registry keysQ244675 KB244675April 19, 2018
  • 250501 How to automate Word from Visual FoxPro and add a table to a documentQ250501 KB250501April 18, 2018
  • 240809 How to prevent the 'Switch To' or 'Application Busy' error messages using OLE AutomationQ240809 KB240809April 17, 2018
  • 203638 How to return information about SQL Server linked serversQ203638 KB203638April 17, 2018
  • 162798 How to use the SET PRINTER TO NAME command to print to a specified printer in Visual FoxProQ162798 KB162798April 17, 2018
  • 146219 How to register an ActiveX control (.ocx) manuallyQ146219 KB146219April 17, 2018
  • 98434 How to use wildcard characters in the SQL-SELECT statement in Visual FoxProQ98434 KB98434April 17, 2018
  • 165170 How to determine the TCP/IP addressQ165170 KB165170April 16, 2018
  • 207595 How to do SQL Server 2000 distributed queries with FoxPro .dbf filesQ207595 KB207595April 13, 2018
  • 272338 How to use Visual FoxPro 6.0 and later versions and the ADO Stream object to handle Binary Large Object (BLOB) dataQ272338 KB272338January 16, 2015
  • 151257 How to modify a Report Preview window propertyQ151257 KB151257January 16, 2015
  • 192352 How To Invoke the 'Open With...' Dialog Box Using _shellexecuteQ192352 KB192352February 22, 2011
  • 947780 How to Alter the Font used in Visual FoxPro IDE WindowsQ947780 KB947780January 17, 2008
  • 259103 How to use the Windows Script Host to automate an applicationQ259103 KB259103August 27, 2007
  • 257541 How to write to the Application log in Windows NT, Windows 2000, or Windows XP using the Windows Script HostQ257541 KB257541August 27, 2007
  • 244676 How to map, delete, and enumerate network drives using the Windows Script HostQ244676 KB244676August 8, 2007
  • 317466 How to remove buttons from the Print Preview toolbarQ317466 KB317466February 12, 2007
  • 315124 How to use the Winsock ActiveX control with Visual FoxProQ315124 KB315124February 12, 2007
  • 268906 How to add the filter condition to the JOIN clause in a SELECT-SQL command in Visual FoxProQ268906 KB268906February 12, 2007
  • 260405 How to import table structures and data from Microsoft Access to Visual FoxProQ260405 KB260405February 12, 2007
  • 259296 How to display a progress bar in the status bar in Visual FoxPro 9.0 and earlier versionsQ259296 KB259296February 12, 2007
  • 251236 How to programmatically set the number of copies for a reportQ251236 KB251236February 12, 2007
  • 248608 How to determine SELECT-SQL optimization levels to affect performance in Visual FoxPro 6.0 and later versionsQ248608 KB248608February 12, 2007
  • 243053 How to create an application role on SQL Server 2000 from within Visual FoxProQ243053 KB243053February 12, 2007
  • 231894 How to update a SQL Server text field through a SQL Server view by using a remote view in Visual FoxPro 6.0 SP3 and later versionsQ231894 KB231894February 12, 2007
  • 195537 How to copy table structures and data from SQL Server into Visual FoxPro tablesQ195537 KB195537February 12, 2007
  • 191953 How To Use Coverage Profiler to Optimize App PerformanceQ191953 KB191953February 12, 2007
  • 190069 How to show a Print Preview window as MDI child of Top-Level formQ190069 KB190069February 12, 2007
  • 188887 How to display the Print Preview window in a top-level form in Visual FoxProQ188887 KB188887February 12, 2007
  • 186920 How to change the Report Designer ruler measurementQ186920 KB186920February 12, 2007
  • 180901 How to create a categorized table in Word 97 or in Office Word 2003 from Visual FoxPro for Windows 5.0 and later versionsQ180901 KB180901February 12, 2007
  • 168527 How to simulate a detail band that is longer than the length of one page in Visual FoxProQ168527 KB168527February 12, 2007
  • 157947 How to create a report that is based on a query in Visual FoxProQ157947 KB157947February 12, 2007
  • 156551 How To Use SYS(3054) to Optimize a QueryQ156551 KB156551February 12, 2007
  • 156034 How to retrieve information from SQL Server about affected rows in Visual FoxPro 7.0 and later versionsQ156034 KB156034February 12, 2007
  • 155788 How to optimize SELECT-SQL commands by using the FORCE clause and SYS(3054) in Visual FoxPro 5.0 and later versionsQ155788 KB155788February 12, 2007
  • 153199 How to use the SQL Server Bulk Copy Program to move lots of data to SQL Server from Visual FoxProQ153199 KB153199February 12, 2007
  • 151090 How to create a stored procedure in Microsoft SQL Server 2000 to return a specific error message to the user in Visual FoxProQ151090 KB151090February 12, 2007
  • 148724 How to fill a second list with values from a multi-select list box in Visual FoxProQ148724 KB148724February 12, 2007
  • 147310 How to print a report that is based on selections in a list in Visual FoxProQ147310 KB147310February 12, 2007
  • 145816 How to access a report's data environment while the report runsQ145816 KB145816February 12, 2007
  • 142940 How to gain access to the View menu pad in an .exe fileQ142940 KB142940February 12, 2007
  • 142567 How to filter a child grid by using a parent combo box in Visual FoxProQ142567 KB142567February 12, 2007
  • 141140 How to create an SQL Server stored procedure in Visual FoxProQ141140 KB141140February 12, 2007
  • 139625 How to use and call the GetUserName API from Visual FoxProQ139625 KB139625February 12, 2007
  • 139624 How to print pictures in a report by using an embedded pathQ139624 KB139624February 12, 2007
  • 139597 How To Use the Wizard txtbtns Class in a Non-Wizard FormQ139597 KB139597February 12, 2007
  • 138777 How to create a report to print or to preview a graph that was created by using the Query Designer and the Graph Wizard in Visual FoxProQ138777 KB138777February 12, 2007
  • 138758 How to print event procedures for a form in Visual FoxProQ138758 KB138758February 12, 2007
  • 138560 How to Disable Combo and List Boxes in Wizard-Generated FormsQ138560 KB138560February 12, 2007
  • 138396 How to use the default Windows printer in Visual FoxProQ138396 KB138396February 12, 2007
  • 137445 How to display the View properties and the Connection properties in Visual FoxProQ137445 KB137445February 12, 2007
  • 135629 HOWTO: Use the Find & Search Options on a Form Wizard FormQ135629 KB135629February 12, 2007
  • 134704 How To Add Controls to a Form Generated by the Form WizardQ134704 KB134704February 12, 2007
  • 134466 How to display multiple columns of the SQL-SELECT cursor in a combobox object in Visual FoxProQ134466 KB134466February 12, 2007
  • 133023 How to list number of records in each group of a SQL-SELECT Group By Clause in Visual FoxProQ133023 KB133023February 12, 2007
  • 131346 How to hide and restore (unhide) system toolbars in Visual FoxPro 3.0 and later versionsQ131346 KB131346February 12, 2007
  • 131200 How to print a report when no records are involvedQ131200 KB131200February 12, 2007
  • 130991 How to send a Windows print file to the printerQ130991 KB130991February 12, 2007
  • 130865 How to place totals or other information on the last page of the report in the page footerQ130865 KB130865February 12, 2007
  • 130707 How to display records that meet a given criteria in a grid on a form in Visual FoxProQ130707 KB130707February 12, 2007
  • 130413 How to create an updatable view to update data in underlying tables in Visual FoxProQ130413 KB130413February 12, 2007
  • 130122 How to add the SQL SELECT to the data environment of the REPORT FORM in FoxPro 3.0 and later versionsQ130122 KB130122February 12, 2007
  • 124402 How to call a user-defined function from the SELECT-SQL statement in FoxProQ124402 KB124402February 12, 2007
  • 113808 How to determine the number of records that are returned by a SELECT-SQL statement in Visual FoxProQ113808 KB113808February 12, 2007
  • 113278 How to replace a string in a text fileQ113278 KB113278February 12, 2007
  • 109152 How create a data grouping that breaks after a certain number of records in Visual FoxProQ109152 KB109152February 12, 2007
  • 106708 How to generate unique key field values in FoxPro and in Visual FoxProQ106708 KB106708February 12, 2007
  • 101046 How to create a dynamic SELECT-SQL statement in an executable file in FoxProQ101046 KB101046February 12, 2007
  • 312105 How to save sent Outlook E-mail to a folder other than the Sent Items folderQ312105 KB312105November 23, 2006
  • 276501 How to set a 'page # of #' counter in a report in Visual FoxProQ276501 KB276501November 23, 2006
  • 172847 How to cut and paste from general field into a Word documentQ172847 KB172847February 9, 2006
  • 133743 How to disable items in a Visual FoxPro ComboBox or ListBox controlQ133743 KB133743August 4, 2005
  • 236126 How to pass a single quotation mark in a string to a table in SQL Server by using SQL passthroughQ236126 KB236126March 17, 2005
  • 238904 How to use SQL pass-through to SELECT INTO a new SQL Server table in Visual FoxProQ238904 KB238904March 16, 2005
  • 233508 How to determine the compatibility level of a SQL Server 7 or SQL Server 2000 database from Visual FoxProQ233508 KB233508March 15, 2005
  • 165492 How to use ADO with ASP to display Visual FoxPro dataQ165492 KB165492March 8, 2005
  • 320151 How to determine dependencies with InstallShield ExpressQ320151 KB320151March 4, 2005
  • 173582 How to use OLE automation to display Microsoft Outlook from Visual FoxProQ173582 KB173582February 28, 2005
  • 249716 How to use the NetRemoteTOD function to obtain date and time information from a serverQ249716 KB249716February 24, 2005
  • 239771 How to return a resultset from Oracle stored procedures into an ADO recordsetQ239771 KB239771February 24, 2005
  • 176069 How to print a range of pages in Word by using OLE automationQ176069 KB176069February 24, 2005
  • 138205 How to use OLE automation in Visual FoxPro with Microsoft WordQ138205 KB138205February 24, 2005
  • 133163 How to control printer attributes for a report at run timeQ133163 KB133163February 24, 2005
  • 130732 How to create a data source to access Excel filesQ130732 KB130732February 24, 2005
  • 114248 How to print specific number of records in detail bandQ114248 KB114248February 22, 2005
  • 194702 How to locate Windows special folder locationsQ194702 KB194702February 21, 2005
  • 114135 How to print an 'X' instead of a 'Y/N' for a logical field in a report in FoxProQ114135 KB114135February 18, 2005
  • 263287 How to set print options without a REPORT FORM ... PROMPT commandQ263287 KB263287February 17, 2005
  • 132727 How to use a user-defined function to calculate percentages in a report group footer in Visual FoxProQ132727 KB132727February 17, 2005
  • 311306 How to use Visual FoxPro to download a Web page from the InternetQ311306 KB311306February 16, 2005
  • 285396 How to obtain Microsoft Office constants from .olb files with Visual FoxProQ285396 KB285396February 16, 2005
  • 191867 How to obtain SQL Server version information from Visual FoxProQ191867 KB191867February 16, 2005
  • 181926 How to automate mail merge to Word using OLE and ODBCQ181926 KB181926February 16, 2005
  • 141551 How to hide the FoxPro Run Command window in Visual FoxProQ141551 KB141551February 15, 2005
  • 128817 How to display check boxes in a reportQ128817 KB128817February 11, 2005
  • 153003 How to perform a screen capture programmatically from Visual FoxProQ153003 KB153003February 8, 2005
  • 304639 How to find PaperSize for custom print sizes under Windows NT and later versions by using Windows API functionsQ304639 KB304639February 2, 2005
  • 135398 How to write to the Windows registry by using Windows API callsQ135398 KB135398February 2, 2005
  • 157047 How to use the FetchAsNeeded property in Visual FoxProQ157047 KB157047January 31, 2005
  • 269617 How to automatically add contacts to Outlook with Visual FoxProQ269617 KB269617January 27, 2005
  • 193846 How to modify the process priority of a shelled application with Visual FoxProQ193846 KB193846January 27, 2005
  • 193774 How to programmatically change the volume label of a drive from Visual FoxProQ193774 KB193774January 27, 2005
  • 321550 How to optimize Visual FoxPro applications while using Norton AntiVirus 2002Q321550 KB321550January 25, 2005
  • 193080 How to use the GetUserDefaultLCID Windows API function to determine operating system regional setting language ID from VFPQ193080 KB193080January 25, 2005
  • 190350 How to create a top-level splash screen with no TaskBar iconQ190350 KB190350December 7, 2004
  • 310179 How to file a bug report for Visual FoxProQ310179 KB310179September 3, 2004
  • 136920 How To Use Universal Naming Conventions with Visual FoxProQ136920 KB136920August 30, 2004
  • 140849 How To Make a PageFrame Work with the Wizard Txtbtns ClassQ140849 KB140849July 1, 2004

-->

This article offers suggestion for improving and troubleshooting performance problems with custom applications written in Visual FoxPro 8.0 or 9.0.

Original product version: Visual FoxPro
Original KB number: 2671338

Symptoms

You have a custom application written in either Visual FoxPro 8.0 or 9.0. Users report performance that does not meet their expectations. The goal of this article is to offer suggestions for improving performance and some tools the developer can use to identify areas of code that contribute to performance bottlenecks.

Cause

The root cause(s) of poor application performance are many and varied. They include, but are not limited, to the following:

  • Visual FoxPro memory usage and configuration
  • Software Design (inefficient code)
  • Antivirus software configuration
  • Local area network performance
  • Wide Area Network performance

Resolution

Microsoft Visual Foxpro 8.0 Download

Often, troubleshooting a performance issue in any application is best done using a holistic approach. It means closely examining all factors that potentially affect performance. These issues include the application, operating system, software that runs concurrently in the environment with the FoxPro executable, and the network.

The troubleshooting framework proposed in this article begins with the application. We look at the various factors regarding setting and design that impact performance. We then look at software running on the machines (both server and local work station), and finally, we exam the network.

Free Download Microsoft Visual Foxpro 8.0 Full Version

More information

To effectively troubleshoot poor performance of a Visual FoxPro custom application, you need a through understand of the operating system environment and the source code for the custom application. If a third-party vendor created the FoxPro application, please contact them for support. They have the requisite understanding of the source code, which might be vital to resolving a performance issue

Visual FoxPro memory usage and configuration

You can often improve the performance of FoxPro code by adding one or more of the following commands at the beginning (in the main program) of your application:

You should test any changes individually to best gauge their impact on performance.

Foxpro

Software Design (inefficient code)

Microsoft Visual Foxpro 9.0 Install

Non-optimized application code severely hampers application performance. However, inefficient code is not always obvious. Fortunately, Visual FoxPro 8.0 and 9.0 have a tool, the Coverage Profiler, that allows you to run code and list the time needed for each line to execute. The Coverage Profiler is available in the development environment, both VFP 8.0 and 9.0, and in a compiled executable, in VFP 9.0.

Code design often comes to the fore as a factor hampering performance if you have legacy (FoxPro 2.x procedural code) that runs under VFP. For example, one might use a LOCATE command instead of a SEEK command or SEEK() function. Since the LOCATE commands read each record of a table, it will naturally be slower under nearly all circumstances. The Coverage Profiler helps you to identify such bottlenecks.

Another common code-related area for performance issue is non-optimized SELECT-SQL commands. Again, the Coverage Profiler can identify if the SELECT-SQL command is taking an inordinate amount of time. However, it does not tell you how to optimize the query. The goal is to make sure that the SELECT-SQL commands use Rushmore optimization to the greatest extent possible.

See these articles and MSDN link for more information:

Antivirus software configuration

Antivirus software can drastically impact the performance of VFP applications. While no one disputes the need for antivirus software, if the software scans VFP data files, your performance may suffer. While we are not experts on all possible configuration settings of antivirus software, we can provide some general suggestions:

Microsoft Visual Foxpro 6.0

  • Disable autoscan.
  • Prevent the antivirus software from scanning VFP data files.
  • Ensure you have the most recent build of antivirus software.

Local area network performance

A slow local area network (LAN) can cause slow application performance. There is no function or utility in VFP that allows you to monitor network performance, there are troubleshooting steps that remove LAN performance from the environment thus allowing you to test only the application performance. First, you can run the application from a Terminal Server machine. The application runs in the memory spaces of the Terminal Server machine (not the client operating system) and only the screen image needs transmitting over the LAN.Secondly, you could also run the application locally and eliminate the network. (This option works if only one client experiences slow performance.)

Network issue can be complex and often involve hardware (routers, switches, NIC cards), settings (Oplocks, network transmission rates) and software (operating system versions, Virtual machines). Often network-related issues require involving the Platforms team to take netmon traces and running other operating system diagnostic tools.

Wide Area Network performance

Wide Area Networks typically cover a much larger geographic area and a LAN. A LAN might connect a site where a WAN might connect sites in two states or countries. With the increased distance comes more potential bottlenecks for application performance. The same problems shooting suggestion for LANs applies to a WAN (test the application on a Terminal Server or locally if possible). Consulting with the Platforms teams or hardware specialists may be needed as well.