# Microsoft Visual FoxPro 7.0 Beta 2 Readme

This document contains last minute notes from the Microsoft Visual FoxPro product team that might help beta testers work around known issues in the Beta 2 release. The information in this Readme is more up to date than the information in the online documentation.

For Visual FoxPro beta updates and known issues that emerged after this document's release, please visit http://Beta.VisualStudio.NET or the beta newsgroups.

Visual FoxPro 7.0 Beta 2 is designed for evaluation and education purposes on test equipment only. Installing to computers that you depend on for day-to-day operations either for yourself or for your business is strongly discouraged.

Visual FoxPro requires you to be an administrator on the local computer to use all the provided tools effectively.

> Note The information contained in this document relates to pre-release software product, which might be changed substantially before its commercial release. This document is provided for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESSED OR IMPLIED, WITH RESPECT TO THIS DOCUMENT OR THE INFORMATION CONTAINED IN IT.

##

## 1. Getting Started with Microsoft Visual FoxPro

### 1.1. System Requirements

Visual FoxPro has the following minimum system requirements:

- Processor: Pentium class
- RAM: 32 MB (recommended: 64 MB or higher)
- Available Hard Disk Space: 250 MB

  > Note Visual FoxPro cannot be installed to a mapped drive. You must install Visual FoxPro on a local hard drive.

- Video: 800 x 600, 256 colors (recommended: High Color 16-bit)
- Operating System: Microsoft Windows 2000, Windows NT 4.0, Windows Me, or Windows 98

  > Note Installation on Windows NT 4.0, Terminal Server Edition is not supported.

### 1.2. Installation

Visual FoxPro 7.0 Beta 2 has been tested on Windows 2000, Windows NT 4.0, Windows Me, and Windows 98.

Additionally, it has been tested on these operating systems with combinations of Microsoft Office 2000 and Microsoft Visual Studio 6.0. You should expect to install this release successfully on each of these operating systems alongside these other Microsoft applications and experience similar levels of product stability in Visual FoxPro 7.0 Beta 2. Features of Office and Visual Studio 6.0 should be unaffected.

Installing to computers that you depend on for day-to-day operations either for yourself or for your business is strongly discouraged. The support infrastructure is not yet in place, and software defects in the beta might block your ability to use other applications on the same system. Install, evaluate, and test this release on a computer at your own risk.

### 1.2.1. Setting up Microsoft Visual FoxPro

To install Visual FoxPro, you must have the following installation CDs: Windows Component Update and Visual FoxPro CD1.

If you previously have installed Visual Studio.NET Beta 1, PDC Technology Preview, or a Visual FoxPro 7.0 Technology Preview on your computer, you must complete the following steps to uninstall the previous release.

> Note Visual FoxPro 7.0 Beta 2 no longer installs Universal Runtime or .NET Framework files that were included in the Visual Studio 7.0 Beta 1 or PDC Technology Preview.

To uninstall Visual FoxPro 7.0 Technology Preview

- Use Add/Remove from the Control Panel.

To uninstall Visual Studio.NET Beta 1

1. Use Add/Remove from the Control Panel. Select Visual Studio.NET Enterprise (English-x86-CD) and then click Change/Remove.
2. Click the Update Visual Studio.NET link. This displays the Visual Studio.NET Maintenance dialog box.
3. Click Uninstall Microsoft Visual Studio.NET, and then click OK to complete the uninstall.
4. You must also uninstall the Setup run-time files. In the Run dialog box, type the following:

       msiexec.exe /x {267CD0E5-21C5-411E-980B-1A8DE3043C44}

   > Note Failure to do this may cause the Windows Component Update to fail when you install Visual FoxPro 7.0 Beta 2. The Setup of the run-time files and the Microsoft XML Parser (MSXML) v. 3.0 will not complete successfully. This will prevent the Visual FoxPro link from becoming enabled in the main Setup dialog box.

5. You may optionally uninstall the Microsoft .NET Framework SDK (English).

   > Note To reinstall Visual Studio.NET, make sure that you have uninstalled using the above steps. Then return to Step 1 under "Setting up Visual Studio.NET" to reinstall.

To uninstall Visual Studio 7.0 PDC Technology Preview

1. From the Start menu, choose Run.
2. In the Run dialog box, type the following:

       msiexec.exe /x {33334F07-0C6B-11D3-A51D-00A0C9231BA1} NOVSUI=1

3. Answer Yes, when prompted, to proceed with the removal of Visual FoxPro PDC Technology Preview.
4. In the Run dialog box, type the following:

       msiexec.exe /x {62EDCF3C-69F4-11D3-A521-00A0C9231BA1}

5. Answer Yes, when prompted, to proceed with removal of the Pre-release Bootstrap for Visual FoxPro PDC Technology Preview.
6. From the Start menu, choose Settings, and then choose Control Panel.
7. Choose Add/Remove Programs, and then choose Change or Remove Programs.
8. Select Microsoft NGWS SDK, and choose Change/Remove.
9. Answer Yes to proceed with removal.
10. Remove all files from n:\Documents and Settings\All Users\Application Data\Microsoft Help. This step makes sure PDC release documentation is removed and only beta documentation appears.

### 1.2.2. Installing Visual FoxPro

There is no preparation required before installing Visual FoxPro. You might want to configure a Windows 2000 or Windows NT 4.0 Server computer with Internet Information Server (IIS) if you plan to use Visual FoxPro for publishing Web Services (refer to your operating system documentation for instructions on setting up and configuring IIS).

- Close all open applications.
- Insert Visual FoxPro CD1.

  For Beta 2, Autorun launches the Readme file, which provides valuable Uninstall information related to previous Betas (for the final release, Autorun will start Setup.exe).

  After you have thoroughly read section 1.2 and removed any previous Beta versions, you are ready to proceed with installation of Visual FoxPro 7.0 Beta 2.

- Install Visual FoxPro 7.0 Beta 2.

  With the Visual FoxPro CD1 loaded, open up Windows Explorer and run Setup.exe from the root of the CD. During installation, you will be prompted to insert the Windows Component Update CD. When you are prompted to reinsert the Visual FoxPro CD, Autorun will likely launch the Readme file again. You can ignore this and go directly to the Setup dialog box and select the second link: Visual FoxPro.

  > Note Visual FoxPro 7.0 Beta 2 cannot be installed to a mapped drive. You must install Visual FoxPro 7.0 Beta 2 on a local hard drive. Do not attempt to use the "map network drive" functionality inside the setup program.

  > Important Please read the first item in section 3.1 (Known Beta 2 Issues) regarding issues with registry settings not being set correctly if your prior Visual FoxPro 7.0 Beta installation was in a different location.

### 1.2.3. Running Visual Studio.NET Beta 1 and Visual FoxPro 7.0 Beta 2 on the Same Computer

Running Visual FoxPro 7.0 Beta 2 and Visual Studio.NET Beta 1 on the same computer has not been thoroughly tested, and is not a supported Beta2 configuration.

To run both beta applications on the same computer

1. Uninstall Visual Studio.NET Beta 1 as described above in section 1.2.1 "To uninstall Visual Studio.NET Beta 1." Do not uninstall the Microsoft .NET Framework SDK (English).
2. Install Visual FoxPro 7.0 Beta 2 as described above in section 1.2.2
3. After installing Visual FoxPro 7.0 Beta 2, insert the Visual FoxPro 7.0 Beta 2 Windows Component Update CD. Right-click on the bootstrap.msi file in the CD root directory, and select Uninstall.
4. Insert the Visual Studio.NET Beta 1 Windows Component Update CD. Right click on the file bootstrap.msi in the CD root directory, and select Install.
5. Run Setup.exe from the Visual Studio.NET Beta 1 CD. Skip the Windows Component Update, and select Install Visual Studio.NET.
6. In the Select items to install list, do not install the Visual FoxPro features:
   - Clear the check box for the Visual FoxPro 7.0 under the Language Tools node.
   - Clear the check box for the Visual FoxPro OLE DB Provider checkbox under the Enterprise Developers Tools node.
   - Clear the check box for the Visual FoxPro Documentation checkbox under the MSDN Documentation node.
7. Follow the instructions to complete the Installation wizard.

### 1.2.4. Uninstalling Visual FoxPro Beta 2

To uninstall Visual FoxPro 7.0 Beta 2

- Use Add/Remove from the Control Panel.

### 1.2.5. Known Installation Issues

###### Cannot find original installation location

When Setup is run in maintenance mode from the Add/Remove Programs in the Control Panel, you might receive the following error message when adding features:

Setup cannot find the original installation source location at <path to original install point>. Please check your drives and ensure setup can be found at that location.

This message appears because the CD or network location from which Visual FoxPro was installed is no longer present. To add features, insert the disk or reconnect to the network location, and then return to Setup.

###### Errors during Setup when removing features

When removing features in Setup maintenance mode, you might see errors in the install log related to "ordering problems." These errors can be ignored safely. All files are removed correctly.

###### Errors during Setup when removing features

Uninstalling Visual FoxPro from a Windows 2000 computer might result in a dialog box at the end of the uninstall prompting you to close a certain Windows Explorer folder. If closing all open windows and clicking Retry does not close the dialog box, click Cancel. This will allow the uninstall to complete; however you must restart your computer, so setup files can be removed also.

##

## 2. Providing Feedback

For Visual FoxPro 7.0 Beta 2, you have an opportunity to provide feedback about various aspects of Visual FoxPro, such as the product and documentation.

As with prior betas, product feedback should only be given in the Visual FoxPro beta newsgroup, which is monitored closely by beta product sysops. Instructions for accessing the newsgroups and reporting bugs are included in a separate beta document.

> Note It is important that feedback be limited to specific Visual FoxPro 7.0 product issues. The beta newsgroup is not the appropriate place to submit general comments/criticism about the product, its marketing, or team. We appreciate your adherence to this policy, so our sysops are not distracted and can focus on specific Visual FoxPro 7.0 product issues to make sure a solid product can be released.

##

## 3. Changes and Known Issues

### 3.1. Known Beta 2 Issues

This section lists known issues in this release of Visual FoxPro.

- If you had a previous Visual FoxPro 7.0 beta installed and changed the installation location with your Beta 2 installation (this is the default), you may have problems with IntelliSense and other XBase tools such as Task Manager working correctly. This is due to old path locations still stored in the registry.

  To remedy this and use the correct path information, exit any running instances of Visual FoxPro 7.0 and delete (or rename) the following registry key:

      HKEY_CURRENT_USER\Software\Microsoft\VisualFoxPro\7.0

  > Note You will need to reset any prior system settings you may have had in the Options dialog box.

- COM servers built using the Single-threaded DLL option (4th radio in the Build Options dialog box) may not properly release after being instantiated. You may need to quit the client process in order to free the DLL, which is necessary if you want to rebuild it. This problem does not occur with Multi-threaded DLLs.
- Setup will install several empty directories that do not include any files including a Visual Studio.NET folder.
- New Web Services support is available through the IntelliSense Manager, Project Builder and Wizards dialog boxes. It requires the SOAP Toolkit 2.0 or later. This feature is functional but might not be 100 percent complete. More information, as well as potential updates, will be posted to the beta newsgroups.
- CursorToXML() and XMLUpdateGram() nFlags value of 48 functions the same as 32 (does not do conversion).
- XMLToCursor() issues:
  - Single digit numeric fields might be translated incorrectly as an "*" depending on the order in which they appear.
  - Missing elements are not mapped to NULL in resulting table row/column. (added as empty).
  - When no path specified, XMLToCursor looks in the HOME() directory before the current directory.
- XMLUpdateGram() does not prepend currency data with "$". When you send such an updategram to an SQL server, it will return the error:

  Disallowed implicit conversion from data type nvarchar to data type money. ..... Use the CONVERT function to run this query.

  To use the updategram, you must insert a "$" just after the open tag for the appropriate fields. For example, if a currency field is named "price," you can fix your updategram using the following function:

      STRTRAN(cUpdategram, "<price>", "<price>$")

- Menu images are not yet finalized.
- You might encounter problems when switching between Visual FoxPro 7.0 and other applications (for example, ALT + TAB) where Visual FoxPro remains on top regardless of the selected application. If Visual FoxPro gets into this state, it is recommended that you quit and then restart Visual FoxPro (you also can minimize Visual FoxPro and then select the other application).
- Online Help lookup functionality from the application has not been finalized for a number of new XBase tools and samples. These include the Object Browser, IntelliSense Manager, Task List Manager, and new Solution samples. Help for these features is available in the Help file using the Search or Index tabs.
- Visual FoxPro OLE DB Provider issues:
  - The precision and scale of Numeric and Float will not be returned correctly when the precision in the base table is greater than ~15.
  - The provider will not create a new Datasource (DBC) if the folder specified does not exist. The same is true for a free table folder.
  - The provider might not perform correctly under stress on a multi-processor computer.
  - Beta 2 builds of the provider have not been tested fully with the Visual Studio.NET Public Beta or Tech Preview.

### 3.2. New and Enhanced Features since Beta 1

- SYS(602) – new function to return BITMAP setting as set in config.fpw
- Grid.HighlightRowLineWidth – new property to control thickness of line used to outline selected row
- Separator.Style - new property to control display of a vertical rule for visual consistency with Office commandbars
- Trace window context menu Fix item - added the Fix menu which currently is available only on Debug Frame sysmenu
- Ctrl+F10 - keyboard shortcut for MDI windows control box (similar to Visual FoxPro 6.0, but toggles between Max and Restore)
- Class/Form designer snap-to-grid keyboard support – can now use CTRL key to move (resize with SHIFT) objects in the class/form designer to snap-to-grid setting
- Options dialog box - new Browse type in IDE tab to control default font in browse window
- Error/Wait Window dialog boxes now reflect the system font (same as Messagebox)
- Intrinsic system dialog boxes support Ctrl+C to copy contents (similar to Messagebox under Windows 2000)
- Ctrl+E and Esc toggles ReportWriter editing of label, Ctrl+Tab moves between objects
- STRTOFILE() – new parameters to support Unicode conversion
- STRCONV() - new parameters to support Unicode conversion
- IMPLEMENTS EXCLUDE - the new EXCLUDE keyword can be included with the IMPLEMENTS statement to prevent the implemented interface from being written to the type library. For example:

      IMPLEMENTS RecordsetEvents EXCLUDE IN "adodb.recordset"

- PEM_COMATTRIB – new 5th array element to specify number of optional parameters in a method. This only affects how method parameters are written out to the type library.
- SYS(2300) – new function that allows for inclusion/removal of a codepage in the NLS (National Language Support) list. If a codepage is part of this list, Visual FoxPro uses NLS routines (instead of internal ones) to determine index key length, do international string compares, make collate keys, and so on. This is intended for use primarily with Eastern European collate sequences, such as Czech, Hungarian and Russian (for example, codepage 1250), where string comparisons are better determined through NLS heuristics.
- COMPROP() – new function to control certain behaviors of COM objects. For example, includes ability to prevent Unicode strings passed from the COM object to Visual FoxPro from being converted to ANSI. The set of properties currently supported in COMPROP() are:
  - UTF8 - does not convert strings used by object to ANSI, but translates to UTF8.
  - PUTREF - Gives preference to setting a property of a COM object assuming it is as a PROPERTY_PUTREF instead of PROPERTY_PUT.
- GENMENU now will discard a "SKIP FOR .F." clause IF found in the SKIP FOR expression box. Code will be generated which just adds content beyond this expression. Additionally, there is a new directive called #IMAGEPATHS, which forces GENMENU to generate full paths (instead of relative) for images. GENMENU now supports menus added to forms with DESKTOP = .T. settings.
- The CTOT() function has been updated to handle XML style dates as returned by SQL Server 2000 XML queries and other applications that import/export data in XML formats.

### 3.3. Changes since Beta 1

- The Visual FoxPro 7.0 online Help is delivered using HTML Help 1.x .chm format. New support libraries (FOXHHELP7.EXE and FOXHHELPPS7.DLL) are included to support help indexes compatible with upcoming Microsoft Help 2.0. This only applies to the FoxHelp.chm file.
- The structure and contents of FoxCode (_FOXCODE) and FoxTask (_Foxtask) tables have changed. You should rename the existing copy of FOXTASK.DBF (and FPT) stored in your user profile APPDATA directory. Remember that this will hold any task information you added. In addition, you must create a new Foxcode table by starting IntelliSense Manager (from the Tools menu), clicking the Cleanup button on the Advanced tab, and clicking the Restore Foxcode button. The old Foxcode table, including any customizations, will be saved as FOXCODE_<n>.DBF/FPT files in the same directory.
- DEFINE BAR … PICTRES <menuvar> has changed. Quotes should not be around the system variable menu name. If you have Visual FoxPro 7.0 Beta 1 MNX menus, regenerate the MPRs using the updated GENMENU. If you have hard-coded DEFINE BAR …PICTRES syntax, remove quotes manually.
- Syntax for CURSORTOXML(), XMLTOCURSOR(), and XMLUPDATEGRAM() have changed. If you have code using these functions, you might have to modify them.
- The structure of OBJECTBROWSER.DBF has changed. Additionally, several of the add-ins, which shipped with Beta 1, have been integrated into the Object Browser. You should delete your old OBJECTBROWSER.DBF (and FPT) files.
- _VFP.LanguageOptions=1 – behavior has been changed since Beta1, so non-declared variables no longer cause an error. Instead, a notification is sent to the Debug Output window of the problem.
- Help menu update – several MSDN menu items have been removed.

### 3.4. Behavior Changes since Visual FoxPro 6.0

This section describes behavioral characteristics of Visual FoxPro 7.0 that differ from those of Visual FoxPro 6.0 and earlier versions. It is possible that these changes affect existing code.

- _SCREEN and _VFP coordinate properties (Top, Left, Height, Width) have been changed to better distinguish between the two windows they represent. The _VFP coordinates represent the entire Visual FoxPro application window (including menu and status bars). The _SCREEN coordinates represent the desktop area (for example, the window to which ? output is directed).
- For performance reasons, the CreateObject( ) function no longer adds a sequential number to the value for a dynamically created Name property. This applies to class definitions in .PRG files that do not have an explicitly set Name property and base classes.
- Because of new support for IntelliSense and COM server typing (for example, LOCAL cName AS string), the use of a variables list separated by spaces only (for example, LOCAL x y z) is no longer allowed. You must separate variables with commas (for example, LOCAL x, y, z).
- The Session class now hides intrinsic properties, methods, and events in the generated type library for an OLEPUBLIC subclass. Additionally, the new default settings for SET TALK, SET EXCLUSIVE, SET SAFETY are now OFF with a Session object using a private data session.
- The VERSION( ) format has changed. The Build number is now the last set of digits. This also might affect usage of the AGETFILEVERSION() function in your code.
- Some of the values of HOME([n]) have changed. Some of these changes only apply to a full installation of Visual Studio. The location of the Samples and Graphics folders is now under the Visual FoxPro root directory.
- The new default location to save files has been changed for compliance with Windows 2000 Logo guidelines. You can view (and change) this location from the Options dialog box (File Locations tab).
- The format for menus (MNX file) has changed to include new Picture support.
- The format for a database (DBC) file will be altered if DBC Events is enabled. This will render the DBC incompatible with prior versions of Visual FoxPro and the ODBC driver. You can restore backward compatibility by disabling DBC events for the DBC. The Visual FoxPro OLE DB provider does support DBC Events.
- The Command Window contents are now persisted between sessions of Visual FoxPro. The contents are stored in a file named _command.prg.
- The resource file (for example, FOXUSER) is now opened shared, so you can run multiple instances of Visual FoxPro using the same FOXUSER file. As in prior versions, you can set the resource file from the Options dialog box.
- The Visual FoxPro 7 runtime libraries (for example, VFP7T.DLL) are no longer installed in the WinSys directory. Additionally, resource files for other languages are now installed with the English product.
- The Properties Window stays open when it is set as Dockable and current form/class designer is closed.
- Old FoxBASE+ support for FOXGRAPH, FOXVIEW, FOXGEN, FOXCODE, CENTRAL, and ASSIST is no longer supported.
- The Windows Explorer shell open functionality for known Visual FoxPro file types now launches a new instance of Visual FoxPro. Additionally, Program and Query files support both Open and Run support. The default for Program files is now Open instead of Run as in Visual FoxPro 6.0.
- The Class/Form Designer surface grid now displays in actual grid coordinates instead of Visual FoxPro 6.0 behavior, which was to display in 2x actual setting.
- Grid column headers now allow for display of keyboard shortcuts. This is for display only, so developers must write code to handle the shortcut action.
- Search path for #INCLUDES has been extended for PRGs, SCXs and VCXs.
- The format of the event-tracking log generated using the SET EVENTTRACKING command now includes a TimeStamp column.
- The _DBLCLICK system variable no longer controls incremental search duration for controls such as list boxes. Now, this is handled by a new system variable called _INCSEEK.

### 3.5. Feature Changes since Visual FoxPro 6.0

The following Visual FoxPro 6.0 features have been removed from the product:

- The Spell Checker is no longer included with the product.
- The Setup wizard is no longer included with the product. A new deployment will be available.
- The Graph runtime is no longer included, because it was primarily for distribution with the Setup wizard.
- The Run ActiveDoc menu item is no longer in the product, but the program is still available and can be called from the Do… menu.
- Several of the MSDN menu items have been removed from the Help menu.