# Visual FoxPro

**Visual FoxPro** (VFP) is an object-oriented integrated development environment with a built-in relational database engine, published by Microsoft from 1995 to 2004 as the final branch of the FoxPro database product line. It is called an environment rather than just a language because it includes tools for creating and editing forms, classes, reports, labels, databases, and tables, alongside .prg files, its plain-text code files.<sup>[1](https://foxpro.dev/blog/what-is-visual-foxpro/)</sup> Microsoft's extended support for the last version, Visual FoxPro 9.0, ended on January 14, 2015, but many business applications built in it remain in production.<sup>[2](https://learn.microsoft.com/en-us/lifecycle/products/microsoft-visual-foxpro-90)</sup><sup> • </sup><sup>[3](https://pilotweststudios.com/case-studies/visual-fox-pro)</sup>

| Key fact | Detail |
|---|---|
| What it is | Object-oriented IDE with a built-in relational database engine; includes designers for forms, classes, reports, labels, databases, and tables, plus .prg code files<sup>[1](https://foxpro.dev/blog/what-is-visual-foxpro/)</sup> |
| Origins | FoxBASE, created at Fox Software in 1984 as a faster, dBASE-compatible database; FoxPro 1.0 in 1989; FoxPro 2.0 in 1991 introduced Rushmore query optimization<sup>[1](https://foxpro.dev/blog/what-is-visual-foxpro/)</sup> |
| Microsoft ownership | Fox Software acquired by Microsoft in March 1992<sup>[4](https://www.tedroche.com/Present/2001/PRE201.pdf)</sup> |
| First "Visual" release | Visual FoxPro 3.0, 1995; version 4 was skipped so numbering aligned with the Visual Studio family<sup>[1](https://foxpro.dev/blog/what-is-visual-foxpro/)</sup> |
| Final version | Visual FoxPro 9.0, released December 22, 2004; Service Pack 2 (October 16, 2007) was the final update<sup>[2](https://learn.microsoft.com/en-us/lifecycle/products/microsoft-visual-foxpro-90)</sup><sup> • </sup><sup>[5](https://www.betaarchive.com/wiki/index.php/Microsoft_KB_Archive/925841)</sup> |
| Support end | Mainstream support ended January 13, 2010; extended support ended January 14, 2015<sup>[2](https://learn.microsoft.com/en-us/lifecycle/products/microsoft-visual-foxpro-90)</sup> |
| Peak community | An estimated 500,000 FoxPro developers around 1995, per Microsoft's last VFP product manager<sup>[6](https://www.vfp.fr/sys.download.asp?FICHIER=be4c6436-05b3-402e-8f53-37c03f8fefe4.pdf&FILENAME=)</sup> |
| Afterlife | Community open source add-ons continue through VFPX; legacy applications are commonly migrated to .NET and SQL Server<sup>[7](https://github.com/VFPX)</sup><sup> • </sup><sup>[3](https://pilotweststudios.com/case-studies/visual-fox-pro)</sup> |

## History

The product's lineage begins with dBASE. Wayne Ratliff, then a software engineer at the [Jet Propulsion Laboratory](https://www.edgepedia.org/jet-propulsion-laboratory), developed a file management program called JPLDIS in FORTRAN on a UNIVAC 1108 mainframe, later rewrote it for the IBM PC as Vulcan, and sold it by mail order; it became dBASE II, whose technology [Ashton-Tate](https://www.edgepedia.org/ashton-tate) purchased from Ratliff in mid-1983.<sup>[8](https://www.landley.net/history/mirror/collate/foxpro/people_began.htm)</sup> Fox Software's FoxBASE, released in December 1984, was a dBASE II work-alike that ran faster than the original.<sup>[1](https://foxpro.dev/blog/what-is-visual-foxpro/)</sup><sup> • </sup><sup>[9](https://landley.net/history/mirror/collate/foxpro/foxprotimeline.htm)</sup>

FoxPro 1.0 arrived in 1989 and FoxPro 2.0 in 1991, the latter introducing the Rushmore query optimization technology.<sup>[1](https://foxpro.dev/blog/what-is-visual-foxpro/)</sup> After Microsoft bought Fox Software in March 1992, the FoxPro 2.5 family was released for DOS, Windows, and the Macintosh; Unix support arrived with FoxPro 2.6, and small updates—2.5a, 2.5b, and 2.6—came out along the way.<sup>[4](https://www.tedroche.com/Present/2001/PRE201.pdf)</sup><sup> • </sup><sup>[1](https://foxpro.dev/blog/what-is-visual-foxpro/)</sup>

**The Visual era.** The "Visual" name arrived in 1995 with Visual FoxPro 3.0, which added object-oriented programming and a database container with table-level business rules; a contemporary review called the OOP extensions, database container, ODBC support, and enhanced project manager its best features.<sup>[1](https://foxpro.dev/blog/what-is-visual-foxpro/)</sup><sup> • </sup><sup>[10](https://www.ml-consult.co.uk/foxst-37.htm)</sup><sup> • </sup><sup>[11](https://groups.google.com/g/comp.databases.xbase.fox/c/biNGOrU7Q1c)</sup> There was a Macintosh version of Visual FoxPro 3.0, but subsequent versions ran only on Windows.<sup>[4](https://www.tedroche.com/Present/2001/PRE201.pdf)</sup> Microsoft skipped version 4 entirely, jumping to Visual FoxPro 5.0 in 1996 to line the numbering up with the rest of the [Visual Studio](https://www.edgepedia.org/visual-studio) family.<sup>[1](https://foxpro.dev/blog/what-is-visual-foxpro/)</sup> Version 6.0 followed in 1998, 7.0 in 2001 (with expanded COM, XML, and web services support), 8.0 in 2003, and 9.0 in 2004.<sup>[1](https://foxpro.dev/blog/what-is-visual-foxpro/)</sup><sup> • </sup><sup>[12](https://learn.microsoft.com/en-us/archive/msdn-magazine/2001/october/visual-foxpro-7-0-program-your-data-with-powerful-new-com-xml-and-web-services-support)</sup>

**End of development.** In a posting dated March 13, 2007, Microsoft announced that it would not continue development of Visual FoxPro after the current project, codenamed Sedna, and that no version 10 would be released.<sup>[13](https://www.codemag.com/Article/0705011/The-House-that-Fox-Built)</sup><sup> • </sup><sup>[14](https://www.golem.de/0703/51261.html)</sup> Microsoft explained that continuing the product core would have required creating a 64-bit development environment, amounting to a near-complete rewrite, and that it was instead investing in SQL Server, including the free SQL Server Express Edition.<sup>[15](https://soft.zhiding.cn/software_zone/2007/0410/385999.shtml)</sup> The Sedna add-on code, built on VFP 9's extensible architecture, was released as shared source on the CodePlex site before the end of summer 2007, and Service Pack 2 for VFP 9 followed on October 16, 2007 with improvements for [Windows Vista](https://www.edgepedia.org/windows-vista).<sup>[14](https://www.golem.de/0703/51261.html)</sup><sup> • </sup><sup>[16](https://www.infoworld.com/article/2315832/microsoft-halts-foxpro.html)</sup><sup> • </sup><sup>[5](https://www.betaarchive.com/wiki/index.php/Microsoft_KB_Archive/925841)</sup> Under the Fixed Lifecycle Policy, VFP 9.0's mainstream support ended January 13, 2010 and extended support ended January 14, 2015.<sup>[2](https://learn.microsoft.com/en-us/lifecycle/products/microsoft-visual-foxpro-90)</sup>

## The development environment

Visual FoxPro combines a programming language, a database engine, and design tools in one package. Developers create and edit forms, classes, reports, labels, databases, and tables with built-in designers, and write code in .prg plain-text files.<sup>[1](https://foxpro.dev/blog/what-is-visual-foxpro/)</sup> It is a development tool for standalone, LAN, client-server, COM, and web applications.<sup>[4](https://www.tedroche.com/Present/2001/PRE201.pdf)</sup> From version 7.0, COM servers built with VFP supported strong typing and implementing interfaces from other type libraries, and a Session class changed default data-session values so developers did not have to write that code in every object.<sup>[12](https://learn.microsoft.com/en-us/archive/msdn-magazine/2001/october/visual-foxpro-7-0-program-your-data-with-powerful-new-com-xml-and-web-services-support)</sup>

For client-server work, remote views are the easiest and most common method to access and update remote data, while SQL pass-through technology sends SQL statements directly to the server for execution there.<sup>[17](https://www.vfphelp.com/vfp9/html/c9d098df-6241-45d2-9d81-1f49ad9b3641.htm)</sup> Upsizing wizards can move VFP free tables to SQL Server and create remote views as part of the migration.<sup>[18](https://www.vfphelp.com/vfp9/_5WN12P7R1.htm)</sup>

## Rushmore query optimization

Rushmore, introduced in FoxPro 2.0, is a data access technique that uses standard Visual FoxPro indexes to optimize access to data; Microsoft's documentation states that certain complex table operations can run hundreds or even thousands of times faster with it.<sup>[1](https://foxpro.dev/blog/what-is-visual-foxpro/)</sup><sup> • </sup><sup>[19](https://www.vfphelp.com/vfp9/html/e7c36f99-0993-40a7-be80-0717cbe85b8c.htm)</sup> It works with any VFP index, including FoxPro 1.x (.idx), compact (.idx), and compound (.cdx) indexes. The compact formats use compression that produces indexes as small as one-sixth the size of uncompressed old-format indexes, which reduces disk access and lets more of the index sit in memory.<sup>[19](https://www.vfphelp.com/vfp9/html/e7c36f99-0993-40a7-be80-0717cbe85b8c.htm)</sup>

Mechanically, Rushmore is a bitmap-oriented algorithm: for each optimizable condition, VFP builds a list with a single bit per record indicating whether the record fulfills the search criteria, reading index blocks stored as balanced b-trees whose nodes are 512-byte blocks holding up to 100 pointers.<sup>[20](https://foxpert.com/docs/howfoxproworks.en.htm)</sup> Optimization applies when a FOR clause expression exactly matches an indexed expression; for example, after INDEX ON UPPER(cu_name) TAG name, a search on the bare field cu_name is not optimizable, while a search on the indexed expression is.<sup>[19](https://www.vfphelp.com/vfp9/html/e7c36f99-0993-40a7-be80-0717cbe85b8c.htm)</sup> For single tables, Rushmore applies wherever a FOR clause appears in commands such as AVERAGE, BROWSE, or LOCATE; for multiple tables, SELECT-SQL queries supersede Rushmore optimizations, with VFP creating temporary indexes as needed. A command can opt out with the NOOPTIMIZE clause, and SET OPTIMIZE disables or enables Rushmore globally.<sup>[19](https://www.vfphelp.com/vfp9/html/e7c36f99-0993-40a7-be80-0717cbe85b8c.htm)</sup> When memory is too small for optimization on very large tables, VFP displays a "Not enough memory for optimization" warning and the query proceeds unoptimized, without data loss.<sup>[19](https://www.vfphelp.com/vfp9/html/e7c36f99-0993-40a7-be80-0717cbe85b8c.htm)</sup>

## Community and open source after Microsoft

Development did not stop with Microsoft. VFPX, a community site for open source add-ons, hosts projects donated by contributors or included as part of Microsoft's efforts to share the source of certain VFP product components; its GitHub organization lists 117 repositories.<sup>[7](https://github.com/VFPX)</sup><sup> • </sup><sup>[21](https://vfp9.github.io/license/)</sup> Notable projects include Thor, a tool manager for IDE add-on tools whose releases continued into 2024 and which requires VFP 9; FoxCharts for drawing charts; FoxBarcode for generating barcode images; ParallelFox for parallel processing; and an updated version of the Visual FoxPro 9.0 SP2 Upsizing Wizard.<sup>[22](https://github.com/vfpx/Thor)</sup><sup> • </sup><sup>[7](https://github.com/VFPX)</sup> Other community projects include FoxBin2Prg integration for source control, a community-maintained VFP 9 SP2 help file, and installers for VFP components such as service packs, the ODBC driver, and the OLE DB provider.<sup>[23](https://vfpx.github.io/projects/)</sup> [Community](https://www.edgepedia.org/community) conferences also continue: Virtual Fox Fest, a two-day online conference on Visual FoxPro and Visual FoxPro Advanced development, was scheduled for October 21-22, 2026.<sup>[24](https://swfox.net/blog/)</sup>

## Legacy status and migration

Visual FoxPro applications can keep running for years on modern Windows, and many businesses still depend on systems built in VFP or earlier FoxPro versions.<sup>[3](https://pilotweststudios.com/case-studies/visual-fox-pro)</sup><sup> • </sup><sup>[1](https://foxpro.dev/blog/what-is-visual-foxpro/)</sup> The practical constraint is maintenance rather than execution: the community of developers who can safely modify a VFP codebase has been shrinking, and most working VFP developers are nearing retirement.<sup>[3](https://pilotweststudios.com/case-studies/visual-fox-pro)</sup>

Documented migrations follow a common pattern of securing the data first and rebuilding in parallel. In one case, a nine-figure distributor with forty years of business logic in Visual FoxPro 9 mirrored its VFP database continuously into a managed SQL database, ran the legacy system alongside the new one, and rebuilt the application section by section with no operational downtime.<sup>[3](https://pilotweststudios.com/case-studies/visual-fox-pro)</sup> A distribution and supply company with over 35 branches in the [Eastern United States](https://www.edgepedia.org/eastern-united-states) ran its ERP, covering inventory, order processing, customer relations, and financials, on VFP 9 with both VFP and SQL Server databases before migrating to .NET.<sup>[25](https://info.innovatixinc.com/case-study-vfp-to-net-sql-erp-dual-database)</sup> Another migration moved a mission-critical Investor Summary System built on VFP 9 to a web-based application using .NET Core, Angular, and SQL Server, using automated database migration tools and AI-assisted conversion of legacy code and reports.<sup>[26](https://info.innovatixinc.com/investment-summary-system)</sup>

## References

1. [What is Visual FoxPro? (Bob Fox, foxpro.dev, 2022)](https://foxpro.dev/blog/what-is-visual-foxpro/)
2. [Microsoft Visual FoxPro 9.0 - Microsoft Lifecycle, Microsoft Learn](https://learn.microsoft.com/en-us/lifecycle/products/microsoft-visual-foxpro-90)
3. [Case study: Visual FoxPro Modernization, Pilot West Studios](https://pilotweststudios.com/case-studies/visual-fox-pro)
4. [Introduction to Visual FoxPro (Ted Roche, 2001)](https://www.tedroche.com/Present/2001/PRE201.pdf)
5. [Microsoft KB Archive/925841 (VFP 9.0 SP2 release date), BetaArchive Wiki](https://www.betaarchive.com/wiki/index.php/Microsoft_KB_Archive/925841)
6. [Visual FoxPro Strategy at Microsoft (Ken Levy editorial, FoxRockX 11/2009)](https://www.vfp.fr/sys.download.asp?FICHIER=be4c6436-05b3-402e-8f53-37c03f8fefe4.pdf&FILENAME=)
7. [VFPX organization, GitHub](https://github.com/VFPX)
8. [The FoxPro History - People That Began The History](https://www.landley.net/history/mirror/collate/foxpro/people_began.htm)
9. [The History of FoxPro - Timeline](https://landley.net/history/mirror/collate/foxpro/foxprotimeline.htm)
10. [Looking back: How Visual FoxPro looked in 1995 (Mike Lewis review)](https://www.ml-consult.co.uk/foxst-37.htm)
11. [Visual FoxPro 3.0 Details, comp.databases.xbase.fox](https://groups.google.com/g/comp.databases.xbase.fox/c/biNGOrU7Q1c)
12. [Visual FoxPro 7.0: Program Your Data with Powerful New COM, XML, and Web Services Support, MSDN Magazine (2001)](https://learn.microsoft.com/en-us/archive/msdn-magazine/2001/october/visual-foxpro-7-0-program-your-data-with-powerful-new-com-xml-and-web-services-support)
13. [The House that Fox Built (Rod Paddock, CODE Magazine, 2007)](https://www.codemag.com/Article/0705011/The-House-that-Fox-Built)
14. [Microsoft öffnet Visual FoxPro "Sedna", Golem.de (2007)](https://www.golem.de/0703/51261.html)
15. [微软决定淘汰FoxPro引起开发社区不满, ZDNet via 至顶网 (2007)](https://soft.zhiding.cn/software_zone/2007/0410/385999.shtml)
16. [Microsoft halts FoxPro, InfoWorld (2007)](https://www.infoworld.com/article/2315832/microsoft-halts-foxpro.html)
17. [Using SQL Pass-Through Technology, Visual FoxPro 9.0 SP2 documentation](https://www.vfphelp.com/vfp9/html/c9d098df-6241-45d2-9d81-1f49ad9b3641.htm)
18. [How to: Use SQL Pass-Through Functions, Visual FoxPro help file](https://www.vfphelp.com/vfp9/_5WN12P7R1.htm)
19. [Using Rushmore Query Optimization to Speed Data Access, Visual FoxPro 9.0 SP2 documentation](https://www.vfphelp.com/vfp9/html/e7c36f99-0993-40a7-be80-0717cbe85b8c.htm)
20. [Rushmore, foxpert.com documentation](https://foxpert.com/docs/howfoxproworks.en.htm)
21. [VFPX license page](https://vfp9.github.io/license/)
22. [VFPX/Thor: Tool manager for FoxPro, GitHub](https://github.com/vfpx/Thor)
23. [VFPX Projects list](https://vfpx.github.io/projects/)
24. [Southwest Fox Conference Blog / Virtual Fox Fest](https://swfox.net/blog/)
25. [Case Study: VFP to .NET / Dual VFP & SQL Database ERP Application, Innovatix](https://info.innovatixinc.com/case-study-vfp-to-net-sql-erp-dual-database)
26. [Case Study: Investor Summary System for an Investment Banking Firm, Innovatix](https://info.innovatixinc.com/investment-summary-system)

---
*Topic: Encyclopedia › Technology and the built world › Computing and digital systems › Software and programming › Programming languages › Individual programming languages › C-family and imperative languages*

*Initially written Sep 17, 2026 · Reviewed: Oct 15, 2026 · Edited: Oct 15, 2026 · Last review: Oct 15, 2026*

*Copyright 2026 EdgeChat AI, a subsidiary of Biostate AI.*

License: Edgepedia Community License 1.0, https://www.edgepedia.org/edgepedia/license
