ID: Q153154
2.60a MACINTOSH
kbprg kbbuglist
The information in this article applies to:
When using FoxPro for Macintosh 2.6 on a Power Macintosh computer with the operating system 7.5.3 software, the computer will hang after appending or editing records to a table located on the network server. This problem occurs on computers that have a Peripheral Component Interconnect (PCI) board as part of their hardware. Apple is shipping these PCI boards as part of their standard equipment on most Power Macintosh computers.
To solve the problem of appending and editing tables on the server, try one of the following:
-or-
-or-
-or-
Microsoft has confirmed this to be a problem in the Microsoft products listed at the beginning of this article. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.
This problem does not occur on Power Macintosh computers with operating systems before 7.5.3. Turning off the Modern Memory Manager(MMM) will work sometimes and the computer will not hang when appending a record from a table on the server. If a software program called Speed Doubler is installed, the problem goes away. Speed Doubler installs its own 68K emulator, replacing the one that comes with system 7.5.3. The 68K emulator that comes with 7.5.3 seems to be the controlling problem. Below is a sample program that causes a Power Macintosh with a PCI board to hang.
When running the code below in the Trace window, place the table out on a server when prompted, and note that the computer hangs after issuing the second UNLOCK command. If the LOCK and UNLOCK commands are not used, the system hangs after three or more passes through the FOR loop.
************* Beginning of Code.
CLOSE DATABASES
SET SAFETY OFF
x = PUTFILE( "Where?", "test.dbf")
IF !EMPTY( x )
SELECT 0
CREATE TABLE (x) ;
( CUST C( 8 ), SUBNO C( 4 ), ;
NKEY C( 35 ), NAME C( 25 ), ;
PHONEKEY C( 23 ))
INDEX ON UPPER( nkey ) TAG nkey ADDITIVE
INDEX ON cust+subno TAG cust ADDITIVE
INDEX ON phonekey TAG phonekey ADDITIVE
INDEX ON name TAG name ADDITIVE
USE (x) SHARED
FOR i = 1 TO 10
APPEND BLANK
=RLOCK()
REPLACE Test.phonekey WITH REPLICATE( ALLTRIM( STR( i ) ), 10 )
REPLACE Test.name WITH REPLICATE( CHR( 64 + i ), 10 )
UNLOCK
ENDFOR
ENDIF
************* End of Code.
Additional reference words: 2.60a FoxMac INSERT INTO FROM MEMVAR
KBCategory: kbprg kbbuglist
KBSubcategory: FxprgGeneral
Keywords : kb3rdparty kbnetwork FxprgGeneral kbbuglist
Version : 2.60a
Platform : MACINTOSH
Last Reviewed: May 14, 1998