ID: Q108090
The information in this article applies to:
Below are the contents of the README.TXT file installed with FoxPro 2.5a for Windows.
**********************************************************
Release Notes for
Microsoft(R) FoxPro(R) for Windows(TM) Version 2.5a
(C)1993 Microsoft Corporation. All Rights Reserved.
Information in the FoxPro online Help is more current than
information in the printed documentation. This README
provides information not contained in the FoxPro online
help or documentation, and provides corrections to both.
**********************************************************
Part Description ---- -----------
1 How to View Accented Characters in This README 2 Sample Files and FoxTools Documentation 3 New Commands and Functions 4 _MEMVARMASK 5 New Transporter and Screen Directives 6 MODIFY COMMAND/FILE/MEMO Enhancements 7 WAIT...WINDOW Enhancements 8 International and Cross Platform Recommendations 9 Documentation Corrections 10 Installation Questions and Answers
This README file contains accented characters. To properly display these accented characters, open this README in the Notepad text editor included with Microsoft Windows or in the FoxPro for Windows text editor with an ANSI font (Courier, FixedSys, MS Sans Serif and so on).
Sample files and the FoxTools library documentation are included with FoxPro for Windows. These files are in the FOXPROW\GOODIES subdirectory and are installed in a compressed form to save hard disk space. To unpack these files, open the File Manager and double-click ALLUNPAK.BAT in the FOXPROW\GOODIES subdirectory.
ALLUNPAK.BAT creates a FOXTOOLS subdirectory that contains FOXTOOLS.WRI, the documentation for the FoxTools library, and sample programs that utilize the FoxTools library.
NOTE: You may use the bitmaps in GOODIES\BITMAPS or modified versions of them in your applications. However, you cannot make and sell copies of the bitmaps or any portion of the bitmaps contained in the GOODIES\BITMAPS subdirectory.
Several commands and functions are new to FoxPro 2.5a. For additional information about these commands and functions, see the "International and Cross Platform Recommendations" section below and the corresponding topics in Help.
SET NOCPTRANS SET COLLATE
CPCURRENT() CPDBF() CPCONVERT() IDXCOLLATE()
Menus you created in FoxPro 2.5 that included expressions may not have behaved properly when the spell checker or graph wizard were active.
SKIP FOR expressions typically depend on the value of skip variables, but the skip variables were not visible to your menus when the spell checker or graph wizard was active in FoxPro 2.5. In the initialization code of the spell checker and graph wizard applications (SPELLCHK.APP and GENGRAPH.APP respectively), PRIVATE ALL is intentionally issued. This hides skip variables from user-defined menus and causes a "Variable not found" error when you make a menu choice.
To correct this situation in FoxPro 2.5a, the following code is added to the beginning of the spell checker and graph wizard applications:
IF TYPE("_memvarmask") = "C" and !EMPTY(_memvarmask)
PRIVATE ALL EXCEPT &_memvarmask
ELSE
PRIVATE ALL
ENDIF
Suppose a certain menu option should be skipped when the memory variable named "skipvar" evaluates to true. In FoxPro 2.5a you should include the following lines in your menu startup code to take advantage of the _MEMVARMASK variable:
PUBLIC _memvarmask _memvarmask = "skipvar"
STORE .T. TO skipvar && Skip initially.
To create a set of skip variables, include the following
lines in your menu startup code:
PUBLIC _memvarmask _memvarmask = "skip*" STORE .T. TO skipthis, skipthat && Skip initially.
When you execute the spell checker and graph wizard, they don't hide variables in SKIP FOR expressions, preventing the "Variable not found" errors you may have experienced in FoxPro 2.5.
Note that MEMVARMASK isn't a system memory variable.
Several new Transporter and screen directives have been added.
The #DOSOBJ, #MACOBJ, #UNIXOBJ and #WINOBJ Transporter directives allow you to transport objects created in the Screen Builder and Report Writer to specific FoxPro platforms. For additional information about these Transporter directives, see the Transporting Files topic in Help.
#TRAN SNIPPET ONLY, a new screen directive, is available in FoxPro 2.5a. This screen directive affects how screen objects are transported, and is not discussed in Help. #TRAN SNIPPET ONLY is designed to limit the Transporter's changes to just screen snippets, and is placed in a screen's Setup snippet.
When screen objects are transported to a different FoxPro platform, only the screen snippets for updated screen objects are transported if #TRAN SNIPPET ONLY is included. All other screen object attributes are not transported to the different platform.
Note that #TRAN SNIPPET ONLY only affects updated screen objects; it does not affect new or unchanged screen objects or screen objects being transported for the first time. Part 6: MODIFY COMMAND/FILE/MEMO Enhancements
A new option, NOMENU, is available in FoxPro for Windows for the MODIFY COMMAND, MODIFY FILE and MODIFY MEMO commands. If you include NOMENU, the Text menu pad is removed from the FoxPro System menu bar, preventing changes to the font, font size, line spacing and indentation. The spell checker is also not available.
WAIT WINDOW now supports multiple line messages. Use a carriage return (CHR(13)) to move portions of your message to additional lines. The message window is automatically expanded to accommodate the additional lines. For example, this command creates a message window that contains two lines:
WAIT WINDOW "This is the 1st line" + CHR(13) + ;
"This is the 2nd line"
The width of the message window is adjusted to fit the
longest line in the message. All lines in the message are
left-justified in the message window. Line feeds (CHR(10))
following CHR(13) are ignored.
Part 8: International and Cross Platform Recommendations
*** IMPORTANT ***
*******************************************************
* Be sure to read this section completely before you *
* change code pages or collation sequences! *
*******************************************************
Overview of Topics
1 FoxPro Collation Sequences 2 Case-Insensitive Collation Sequences 3 Case-Sensitive Collation Sequences 4 How do the SEEK and SKIP commands work? 5 Alternatives to SEEK and SKIP 6 Additional Recommendations 7 New Code Pages 8 CPZERO Program 9 Corrections to the Help File
FoxPro 2.5a gives international developers and users powerful new features for handling accented characters across different FoxPro platforms, and provides accurate sorting in many languages.
For international FoxPro users, this section describes how code pages and collation sequences affect sorting, seeking and comparisons using the SORT and SEEK commands, and also provides recommendations for taking advantage of these features.
U.S. FoxPro users whose applications don't contain accented characters may not need any of the new international 2.5a features. In this case, you can disregard this section of the README and the International/X-Platform topic in Help. FoxPro 2.5a is 100% percent compatible with FoxPro 2.5.
With a MACHINE collation sequence, which earlier FoxPro versions use (and to which FoxPro 2.5a still defaults), each character in the code page, whether it's a Roman character, an accented character, or a line-drawing character, has a unique "sort weight" determined by its position in the code page. In a majority of code pages, all accented characters appear after the unaccented characters. In this situation an "('a' with an umlaut)" sorts after "z", which isn't correct in most languages (although it is true in Swedish, for example).
Furthermore, in most languages accented characters sort after their unaccented counterparts, but only if the unaccented versions of all characters being compared are the same. For example, in German, "('a' with an umlaut)" sorts after the unaccented "a", but the string "('a' with an umlaut)a" sorts before the string "ab" because the second character "a" is less than the second character "b". In this way, characters are interleaved in many cultures.
FoxPro 2.5a supports a number of new collation sequences to correctly sort in many languages. These sequences take into account all the complex rules of the language (including two-to-one, three-to-one and one-to-two mappings). The following collation sequences were available when this README was created. The code pages for which these collation sequences are defined are also included.
Collation Sequence Code Pages
------------------ ----------
CZECH 852, 1250
DUTCH 437, 850, 1252
GENERAL 437, 850, 852, 865, 1250, 1252
HUNGARY 852, 1250
ICELAND 437, 850, 1252
MACHINE All
NORDAN 437, 850, 865, 1252
POLISH 852, 1250
RUSSIAN 866, 1251
SLOVAK 852, 1250
SPANISH 437, 850, 1252
SWEFIN 437, 850, 865, 1252
UNIQWT 437, 850, 1252
If you specify a collation sequence in the SET COLLATE
command as a string literal, enclose the collation
sequence in quotation marks. Don't enclose the collation
sequence in quotation marks if you specify a collation
sequence in your FoxPro configuration file (CONFIG.FP or
CONFIG.FPW).
If you use the SET COLLATE command to specify a collation sequence that isn't supported by the current code page, FoxPro generates an error. If you specify a collation sequence in your FoxPro configuration file that isn't supported by the current code page, the collation sequence defaults to MACHINE.
If you specify a collation sequence in the International panel in the View window, the collation sequence names appear in longer forms. For example, the NORDAN option appears as Norwegian & Danish, and the SWEFIN option appears as Swedish & Finnish.
For additional information about collation sequences, see SET COLLATE in Help.
Two case-sensitive collation sequences are available in FoxPro: the familiar MACHINE sequence, the default sequence in earlier FoxPro versions, and the sequence named UNIQWT. UNIQWT is a "unique weight" sort in which each accented character sorts strictly after its unaccented counterpart (unlike the interleaving of accented characters described earlier).
While the collation sequence with UNIQWT isn't strictly culturally correct as with GENERAL, it may aid developers in migrating their applications from earlier FoxPro versions. One reason is that upper- and lower-case letter are treated distinctly as they were in earlier FoxPro versions. Another reason is described in the section titled "How do the SEEK and SKIP commands work?"
The SEEK command accepts an expression. FoxPro transforms that expression into a sort key which it compares to keys in the master index or tag. SEEK then positions the record pointer at the first index entry that's greater than or equal to ( >= ) the supplied key.
With a machine sort, SEEK finds a match if there is one. The UNIQWT sort has the same property. But when FoxPro uses the new language-specific collation sequences to create indexes, only the alphabetic part of the key is considered and any diacritical marks are ignored. In other words, even if you SEEK "('a' with an umlaut)bc" you may find "abc". Note that partial searches (where you search for part of the field) using SEEK may not return the results you expect when the current collation sequence is not MACHINE or UNIQWT.
FoxPro behaves this way for the following three reasons:
1) Performance.
2) Consistency with the SKIP command.
3) Consistency with the SET NEAR command.
To have SEEK and SKIP find only those records that exactly match accented characters, you must either SET EXACT ON or use an index tag created with the MACHINE or UNIQWT collation sequences.
Note that SEEK and SKIP use the collation sequence of the master index or tag, and ignore the current collation sequence. SEEK can't be used unless there is an index is active.
If you use accented characters, use one of the following methods to search a table:
1) Construct a loop with SCAN FOR ... ENDSCAN.
2) Use LOCATE FOR ... CONTINUE.
LOCATE and SCAN use an index if one is active, and they have two very significant advantages over SEEK when data contains accented characters.
First, both LOCATE and SCAN remember the condition with which they were invoked, so they can be used for looping on a condition. SEEK, on the other hand, simply positions you somewhere in the index, and SKIP continues down the index from that point. With international data, this may not give you the results you want.
Second, LOCATE and SCAN are diacritically-sensitive, whereas SEEK isn't. In addition, both LOCATE and SCAN can be fully optimized by Rushmore if the current collation sequence is MACHINE or UNIQWT; otherwise partial optimization will occur.
The ORDER BY clause of the SQL SELECT command uses the current collating sequence, which is returned by SET("COLLATE")).
1) If you aren't concerned with indexing accented
characters in a language-specific way, feel free to
continue to use machine indexes. For many U.S. users,
this is appropriate.
2) For the best performance when using a collation
sequence other than MACHINE or UNIQWT, be sure that the
current collation sequence is the same as the collation
sequence of any indexes you are using.
3) Most international users will want accented characters
in all fields to be translated automatically by FoxPro
when running cross-platform applications. However, if you
have a table with a character field that's actually
storing binary information (data), the SET NOCPTRANS
command allows you to inform FoxPro that characters
in such a field should not be translated.
Binary data might otherwise be changed, because of
FoxPro's "nearest" character mapping. For characters such
as the MS-DOS line-drawing characters, FoxPro maps to the
"nearest" character in the destination code page.
If you choose to use SET NOCPTRANS, you must do so
immediately after issuing the USE command. From that
point on, FoxPro's automatic character translation is
not in effect for any fields you designate. In particular,
you must issue the SET NOCPTRANS command before issuing
a SQL SELECT command -- you cannot let SQL SELECT open
tables for you if the tables contain fields which should
not be translated.
Note that SET NOCPTRANS only operates on fields for the
table open in the currently selected work area. If you
close a table and then open the table again, you must
reissue SET NOCPTRANS and designate the fields which
should not be translated.
4) If you create cross platform applications, you should
avoid using FoxFont. FoxFont is an OEM MS-DOS font that
you may find useful in some situations. But if you use
FoxFont in an application you create in FoxPro for
Windows, some of the characters in the application may
not transport correctly to other FoxPro platforms.
Furthermore, FoxFont won't correctly display characters
typed on international Windows keyboards. If you have
automatic code page translation enabled, FoxPro will
display accented characters correctly.
FoxFont is the installed default font for the FoxPro
desktop. FoxFont is the default font for user-defined
windows created with DEFINE WINDOW when the FONT clause
is omitted. Be sure to include the FONT clause when
creating user-defined windows in FoxPro for Windows.
FixedSys is the default font for the Command, Trace and
Debug windows if you're using Windows 3.1. Text editor
windows default to the current Command window font.
5) FoxPro 2.5a can automatically translate accented
characters in most files types such as .DBF, .SCX, and
.FXP files. However, program (.PRG) and text (.TXT) files
don't have a header and can't be marked with a code page.
Therefore, FoxPro must assume that a program or text file
was designed for use on the platform on which it is
opened.
It's important that you compile each program on the
platform on which it was written. Since compiled programs
(.FXP files) have a header, once you compile a program, it
can be run on any FoxPro platform and accented characters
in the original source program are automatically
translated when automatic code page translation is in
effect.
6) Do not mix programs created on different FoxPro
platforms in a project. The Project Manager assumes that
all programs and tables in a project are native to the
current FoxPro platform. If you create an application or
an executable from a project that contains programs
created on different FoxPro platforms, translation of
accented characters in the programs might not be
translated properly.
Also, within the Project Manager you can't specify the
platform on which a program or text file was created.
Therefore, in the Project Manager don't edit programs or
tables created on a FoxPro platform other than the current
platform. This means that you shouldn't double-click on a
file to open it in the Project Manager if you've enabled
automatic translation by including CODEPAGE = AUTO in
your FoxPro configuration file.
If you create an application that contains files created
on different FoxPro platforms, do not open the files for
editing from within the Project Manager.
However, once you build an application (.APP file), it
will run on any FoxPro platform and FoxPro can
automatically translate accented characters.
7) If you have a project created in FoxPro for MS-DOS
version 2.0 and the files within the project contain
accented characters, you can share the project and
its files across different FoxPro platforms by performing
the following steps to convert the project and its files.
This conversion is required just once, and enables cross
platform sharing of all the elements of the project.
a) Open the project in FoxPro for MS-DOS 2.5a or FoxPro
for Windows 2.5a. A dialog appears, asking if you would
like to convert the project to a 2.5 format. Choose
Yes, then close the project.
b) Open every screen, report, label, menu and table
contained in the project with the USE command. You are
prompted for the code page (437, 850 and so on) on
which each was created. Specify the MS-DOS code page
on which each was built and then choose Yes.
c) Use MODIFY COMMAND or MODIFY FILE and include the
AS clause to open EVERY program, query, format file
or text file contained in the project. In the AS
clause, specify the code page (437, 850 and so on)
of the FoxPro platform on which each was created.
Choose the Save As option from the File menu and choose
the Change Code Page check box. In the dialog that
appears after you choose Save, specify the code page
for the FoxPro platform on which the file will be used.
8) If you're developing a cross-platform application,
avoid using characters that appear in one code page and
not another. For example, the MS-DOS line drawing
characters aren't supported under Windows, so avoid using
them in screens you plan to transport between FoxPro for
MS-DOS and FoxPro for Windows.
You can use CHR() if your application absolutely requires
line drawing and accented characters. Output from CHR()
isn't translated when the function is executed, allowing
you to output any character.
9) The MS-DOS file system is case-insensitive and requires
uppercase file names. If your applications run on FoxPro
for MS-DOS, be sure to restrict file names to those
characters that have uppercase equivalents in your MS-DOS
code page.
For example, code page 437 doesn't contain uppercase
versions of several accented vowels. These characters
can't be safely used in a FoxPro file name. It's best
to avoid accented characters in file names.
The following code pages are now supported:
Code Page Platform
--------- --------
437 U.S. MS-DOS
850 International MS-DOS
852 Eastern European MS-DOS
865 Nordic MS-DOS
866 Russian MS-DOS
1250 Eastern European Windows
1251 Russian Windows
1252 Windows ANSI
Byte 29 in table headers contains the code page identifier.
The following table lists the code page and the
corresponding code page identifier.
Code Page Code Page Identifier
--------- --------------------
437 0x01
850 0x02
852 0x100
865 0x102
866 0x101
1250 0x200
1251 0x201
1252 0x03
If you accidentally specify the wrong code page when you open a table that isn't marked with a code page, run CPZERO.PRG to reset the table's code page to zero. CPZERO is a FoxPro program that is automatically installed in your FoxPro directory. Before you run CPZERO, make sure that the table whose code page you'll reset isn't open. When you run CPZERO, you are prompted for the name of the table to modify.
These FoxPro 2.5a help file topics contain the following line:
"Note that MODIFY STRUCTURE also marks a table with the
current code page."
This line is incorrect and should read:
"Note that MODIFY STRUCTURE doesn't mark a table with the
current code page. Rather, it preserves the table's
existing code page mark."
This help file topic contains the following line:
For example, if the current collation sequence is GENERAL, both of these return true (.T.):
"Stra(lowercase beta)e" = "Strasse"
and
"Stra(lowercase beta)e" == "Strasse"
"Stra(lowercase beta)e" == "Strasse" will always return .F.,
not .T. as it states in this topic. A strict machine comparison
is performed by ==. All characters in each string are
compared, including trailing blanks. For more information
about comparisons using = and ==, see SET EXACT in the
Language Reference or the FoxPro help facility.
The syntax for DDEExecute() is incorrect on page L3-363 of the Language Reference manual and in the Help file. The correct syntax is:
DDEExecute(<expN>, <expC1>[, <expC2>])
The <expC2> parameter is the name of a user-defined
function (UDF). There is no format parameter in this
function.
The second example on page D13-24 of the Developer's Guide isn't correct and will cause an error. Microsoft Word doesn't support linking.
Overview of Questions
1 What is the easiest way to install FoxPro on a network? 2 What kind of user rights do I need to install FoxPro
on the network?
3 Why are workstation users on our network unable to use
the graphing and spell checker features in FoxPro?
4 During installation I was asked to select either
DOS-style keystrokes or Windows-style keystrokes.
Which should I choose?
5 What is the minimum DOS files setting for FoxPro for
Windows?
6 Does FoxPro for Windows update any Dynamic Link
Libraries (DLLs) in the Windows subdirectory where
system files are kept?
7 I accidentally deleted some of the FoxPro sample files.
Can I reinstall these files without reinstalling
FoxPro?
8 My computer is having difficulty reading the FoxPro
disks because of an alignment problem with the floppy
drives. Is there another option for installation?
9 I'm trying to install FoxPro for Windows under Windows 3.0
and I'm getting the message "Cannot write VER.DLL."
Any suggestions?
10 I'm having difficulty installing FoxPro. I've tried
streamlining both my CONFIG.SYS and AUTOEXEC.BAT and I
still can't install FoxPro for Windows. What should I
do?
11 Can I put a common WIN.INI file up on the server?
12 What is the best way to edit the WIN.INI file?
13 If I modify my WIN.INI file, is it advisable to
restart Windows?
14 Can I delete the ~MSSTFQF.T directory?
15 I get the error message "Insufficient memory" when
trying to load FoxPro for Windows. What setting needs
to be modified?
16 My computer is running with 4 MB of RAM. How large a
swap file do I need?
17 When using my LANtastic network card, why do I always
get a memory conflict when loading FoxPro for Windows?
18 When using a Paradise driver, I get a memory conflict
when trying to load FoxPro for Windows. What should I
do?
19 When I use QEMM386 memory manager with FoxPro for
Windows, I get a memory conflict. What should I do?
20 When I use the Mach32 video card with my Gateway 2000,
I get a General Protection Fault in module MACH32.DRV
at 0003:0E22. What should I do?
21 I understand that a number of video drivers don't work
properly with FoxPro for Windows. Why is this and what
steps should I take to resolve the situation?
22 I occasionally experience problems when trying to open
more than 15 tables at one time. What could be wrong?
23 I'm running Windows for Workgroups. Do I need to load
the MS-DOS SHARE program?
24 Where does FoxPro create temporary files?
25 I frequently use the RUN command to change drives and
directories within an application. Why isn't this
working in FoxPro for Windows?
26 Why isn't FoxPro registered in REG.DAT within Windows?
27 Why doesn't the value returned by SYS(2010) match the
FILES setting in the CONFIG.SYS file?
28 What memory allocation options are available with the
Windows PIF Editor settings?
Question 1
What is the easiest way to install FoxPro on a network?
Answer 1
In a network environment you must first install FoxPro on the server and then set up each workstation. Installation on the server is called an Administrative Setup, for which you use the /A installation switch. This option decompresses all FoxPro for Windows files and Setup files. FoxPro for Windows files will be read-only on the network drive.
To perform an Administrative Setup, choose Run... from the Windows Program Manager File menu. When the Run dialog appears, type A:\SETUP /A or B:\SETUP /A (depending on the floppy drive you are using) in the Command Line box. Press Enter and proceed with the installation. You will be prompted for your user information and an installation directory, default drive, path name, and do on. For more detailed information refer to "Instructions for Administrative Setup" in the FoxPro for Windows Installation and Configuration manual.
Installation on individual workstations is called Workstation Setup, for which you use the /N installation switch. Workstation Setup requires a previous Administrative Setup. The Workstation Setup copies FoxPro initialization files, updates some common .DLL files, and creates a Program Manager group and an icon on each workstation to run a shared network version of FoxPro for Windows.
You can perform the workstation setup in two ways: from the network or from disk. To install from a network drive, open the Windows File Manager and then open a window with the correct network path for FoxPro for Windows and double- click SETUP.EXE. Choose the Workstation Installation button in the Installation Type dialog box. To install from disk, type A:\SETUP /N or B:\SETUP /N in the Run dialog Command Line box, then press Enter. For more detailed information refer to "Instructions for Workstation Setup" in the FoxPro for Windows Installation and Configuration manual.
Question 2
What kind of user rights do I need to install FoxPro on the network?
Answer 2
You need full system rights to install on the network. Contact your system administrator for further information about your specific installation.
Question 3
Why are workstation users on our network unable to use the graphing and spell checker features in FoxPro?
Answer 3
Workstation users need access to the MSGRAPH and PROOF subdirectories in order to use these features. Contact your system administrator regarding user access to these subdirectories.
Question 4
During installation I was asked to select either DOS-style keystrokes or Windows-style keystrokes. Which should I choose?
Answer 4
If you aren't sure which style to use, select Windows- style keystrokes. Windows-style keystrokes correspond to standard Windows keystrokes. MS-DOS-style keystrokes cause FoxPro for Windows to behave like FoxPro for MS-DOS. Later, if you want to use MS-DOS-style keystrokes, add the line KEYCOMP = DOS to your CONFIG.FPW file. For more information about the styles of keystrokes, see the SET KEYCOMP command in the FoxPro Language Reference manual or Help.
Question 5
What is the minimum DOS files setting for FoxPro for Windows?
Answer 5
The DOS FILES command should be set to 40 or higher. Buffers should be set to at least 25, or to 10 if you are using a disk cache. During installation, Setup checks your CONFIG.SYS file. If your FILES setting is less than 40, a dialog gives you three choices: have Setup make the modifications for you, have Setup make the modifications after you have reviewed and edited the changes, or allow you to make the modifications later. If you allow Setup to modify your CONFIG.SYS file, your old file is saved as CONFIG.OLD or as CONFIG.001 if CONFIG.OLD already exists. For more information, see "Customizing FoxPro" in the Installation and Configuration manual.
Question 6
Does FoxPro for Windows update any Dynamic Link Libraries (DLL files) in the Windows subdirectory where system files are kept?
Answer 6
Yes. The following DLL files are updated: COMMDLG.DLL, DDEML.DLL, OLECLI.DLL, OLESVR.DLL, SHELL.DLL, TOOLHELP.DLL and VER.DLL.
The FoxPro graphing capabilities require that GRAPH.EXE and GRAPH.HLP be stored in the Windows subdirectory MSAPPS\MSGRAPH.
FoxPro spell checking capabilities require that MSSPELL.DLL, MSSP_AM.LEX, and MSSP_BR.LEX be stored in the Windows subdirectory \MSAPPS\PROOF.
Question 7
I accidentally deleted some of the FoxPro sample files. Can I reinstall these files without reinstalling FoxPro?
Answer 7
Yes. Run Setup again and select the Custom Installation option from the Installation Type dialog. With this option box, you choose which components to install.
Question 8
My computer is having difficulty reading the FoxPro disks because of an alignment problem with the floppy drives. Is there another option for installation?
Answer 8
Try copying all the files to a directory on your hard disk and then install from the hard disk.
Question 9
I'm trying to install FoxPro for Windows under Windows 3.0 and I'm getting the message "Cannot write VER.DLL." Any suggestions?
Answer 9
Rename the VER.DLL file in the Windows System subdirectory.
Question 10
I'm having difficulty installing FoxPro. I've tried streamlining both my CONFIG.SYS and AUTOEXEC.BAT and I still can't install FoxPro for Windows. What should I do?
Answer 10
First of all, don't try to install from within a third- party replacement shell, such as Norton Desktop. Make sure you use the Windows Program Manager shell. To specify the Program Manager shell, change the SYSTEM.INI line
SHELL = <some other shell>
to
SHELL = PROGMAN.EXE
Next, make certain you have disabled all TSRs, including anti-virus software. Check the WIN.INI file for the LOAD = and RUN = lines. Comment these lines out using a semicolon (;).
Question 11
Can I put a common WIN.INI file up on the server?
Answer 11
No. Each workstation has its own WIN.INI file.
Question 12
What is the best way to edit the WIN.INI file?
Answer 12
You can edit the WIN.INI file with Notepad or EDIT.EXE in MS-DOS 5.0.
Question 13
If I modify my WIN.INI file, is it advisable to restart Windows?
Answer 13
Yes. As a general rule, always restart Windows when you have modified the WIN.INI file. There are some exceptions, but if you are trouble-shooting you want to be certain that all changes are reflected in the current environment.
Question 14
Can I delete the ~MSSTFQF.T directory?
Answer 14
Yes. The ~MSSTFQF.T directory is created during setup. Ordinarily this directory is deleted at the end of the installation process.
Question 15
I get the error message "Insufficient memory" when trying to load FoxPro for Windows. What setting needs to be modified?
Answer 15
Add a MEMLIMIT statement to your CONFIG.FPW file. The syntax for this statement is:
MEMLIMIT = %, min, max
The % argument is a calculated amount based on available memory and min and max represent actual minimum and maximum allocations.
For example, the following statement allocates 80 percent of your system's available memory to FoxPro with a minimum allocation of 1024K and a maximum of 4096K:
MEMLIMIT = 80, 1024, 4096.
Question 16
My computer is running with 4 MB of RAM. How large a swap file do I need?
Answer 16
Use a 2 MB permanent swap file for virtual memory and don't include a MEMLIMIT setting in the CONFIG.FPW file. If you are running multiple programs simultaneously, it may be necessary to specify a swap file larger than 2 MB. Let FoxPro run with the default setting. In addition, do not use a RAM drive or an expanded memory manager. Expanded memory isn't used by FoxPro for Windows. A disk cache should be no larger than 256K.
Question 17
When using my LANtastic network card, I always get a memory conflict when loading FoxPro for Windows. What should I do?
Answer 17
Try using the following line in the SYSTEM.INI file in the Windows directory:
EMMExclude = D800-DFFF
Question 18
When using a Paradise driver, I get a memory conflict when trying to load FoxPro for Windows. What should I do?
Answer 18
Try using the following line in the SYSTEM.INI file in the Windows directory:
EMMExclude = C600-C800
Question 19
When I use QEMM386 memory manager with FoxPro for Windows, I get a memory conflict. What should I do?
Answer 19
Try using the following line in the SYSTEM.INI file in the Windows directory:
EMMExclude = C0FF-C7FF
Question 20
When I use the Mach32 video card with my Gateway 2000, I get a General Protection Fault in module MACH32.DRV at 0003:0E22. What should I do?
Answer 20
You are experiencing a problem with your video driver. Contact your video card vendor for the most recent version of the driver. In the meantime, you can use the VGA.DRV or the SUPERVGA.DRV drivers that come with Windows.
Question 21
I understand that a number of video drivers don't work properly with FoxPro for Windows. Why is this and what steps should I take to resolve the situation?
Answer 21
FoxPro for Windows makes intensive use of screen I/O. If you are experiencing General Protection Faults (GPFs) or display problems (borders, status bar, fonts, unusual alignment when previewing reports) you may be experiencing a problem with your video driver. To test this situation, load either the VGA or VGA version 3.0 drivers and go through the steps to reproduce the earlier problem. If the problem no longer exists when you are using a standard Windows driver, it's very likely that the old driver was the cause of the problem. Contact the vendor for an updated version of the driver or download the Windows Driver Library (WDL). To obtain the Windows Driver Library, download from the Microsoft Software Library.
The following file is available for download from the Microsoft Software Library:
~ WDL.txt (size: 48448 bytes)
For more information about downloading files from the Microsoft Software
Library, please see the following article in the Microsoft Knowledge Base:
ARTICLE-ID: Q119591
TITLE : How to Obtain Microsoft Support Files from Online Services
We have identified problems with the following video
cards:
ATI Ultra Graphics Pro (local bus) -- caused GPF, fixed
with update
AST Power Premium 486 w/VGA on Motherboard -- fixed
with update
Genoa 7900 MM card
Dell 486/20 with VGA on Motherboard
Compaq QVision
Speed Star 24x
Trident 8900C
TIGA 1024 x 768 x 256 small fonts
NEC 2A
MACH32
Contact your video card vendor for the most recent version
of the driver for your card. In the meantime, you can use
the VGA.DRV or the SUPERVGA.DRV drivers that come with
Windows.
Question 22
I occasionally experience problems when trying to open more than 15 tables at one time. What could be wrong?
Answer 22
Make certain you have the correct SHARE statement in your AUTOEXEC.BAT file:
SHARE /F:4096 /L:500
Question 23
I'm running Windows for Workgroups. Do I need to load the MS-DOS SHARE program?
Answer 23
No. Windows for Workgroups automatically loads VSHARE, which takes the place of SHARE.
Question 24
Where does FoxPro create its temporary files?
Answer 24
FoxPro creates its temporary files in the same directory where Windows stores its temporary files, unless you specifically designate an alternate location by including one or more of the EDITWORK, SORTWORK, PROGWORK and/or TMPFILES statements in the CONFIG.FPW file. The location of Windows .TMP files is specified with the MS-DOS set variable TEMP. In most cases, you should let FoxPro write .TMP files to the same location. However, if this location is a RAM drive, make sure that enough space is available for both FoxPro and Windows .TMP files.
Question 25
I frequently use the RUN command to change drives and directories within an application. Why isn't this working in FoxPro for Windows?
Answer 25
Each time you issue the RUN command to change drives and directories, Windows opens a new session of MS-DOS, otherwise known as a virtual machine, and executes the command within the newly created session. When you exit from this session or shut down the virtual machine, you are right back where you started without having changed drives. You should use FoxPro's own drive and directory commands instead of using the RUN command. For example, using SET DEFAULT TO C:\NEWDIR will actually issue the MS-DOS command CHDIR.
Question 26
Why isn't FoxPro registered in REG.DAT within Windows?
Answer 26
Only OLE servers are registered in REG.DAT. FoxPro is not an OLE server. It is an OLE client.
Question 27
Why doesn't the value returned by SYS(2010) match the FILES setting in the CONFIG.SYS file?
Answer 27
Windows interacts with the MS-DOS open file tables in such a way that the value reported in the MS-DOS box and in Windows may be different.
Question 28
What memory allocation options are available with the Windows PIF Editor settings?
Answer 28
In the PIF Editor "memory requirements" section the "KB Required" and "KB Desired" may both be set to "-1". This tells Windows to give all the available memory it can to an MS-DOS application. This doesn't mean that the MS-DOS application will have more than 600K, but it will get about as much conventional memory as you had available before starting Windows (minus some conventional memory that Windows itself occupies).
Changing the "EMS Memory" and "XMS Memory" sections tells Windows to provide or not provide the MS-DOS application and EMS (Expanded Memory Services) or XMS (Extended Memory Services). This won't, however, allow an application that doesn't support accessing EMS or XMS to do so. Only applications that have the capability will be able to access the additional memory provided. It is important to note that once you tell Windows to create EMS or XMS for an application, it does so whether the application can use it or not.
In the "Execution" section, if Exclusive is selected, no other application, be it Windows or MS-DOS, will run while the application with Exclusive is the current application.
In the "Advanced Options" there is a "Multitasking Options" section. This section is very important when you are trying to get an MS-DOS application to run in the background. If the MS-DOS application is very I/O intensive (reads and writes to disk, asynchronous communication, and do on) it will be necessary to increase the "Background Priority." Unfortunately there is no rule of thumb when it comes to the exact number that should be used. It's important to note that the larger the number for "Background Priority" the slower other applications will run while the MS-DOS application with the high priority is running in the background.
=================
End of README.TXT
=================
Additional query words: protection gp fault gpf
Keywords : kbfile kbreadme kbsetup kbVFP250a
Issue type : kbinfo
Last Reviewed: December 11, 1998