Microsoft KB Archive/102230

From BetaArchive Wiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

ACC1x: Setup (STFSETUP) GP Faults in Windows Standard Mode

Q102230



The information in this article applies to:


  • Microsoft Access 1.1
  • Microsoft Access Distribution Kit, version 1.1





SYMPTOMS

When you are running Microsoft Windows in standard mode, the error message "STFSETUP caused a general protection fault in STFSETUP.EXE" will occur near the end of the installation process if you are running any of the following:


  • The retail Setup of Microsoft Access version 1.1.
  • A workstation Setup (/n) from the version 1.1 upgrade disks.
  • A custom application developed with the Microsoft Access Distribution Kit (ADK).



CAUSE

This problem is caused by the detection and implementation of sharing mechanisms.



RESOLUTION

Run Windows in 386 enhanced mode during Setup. You may then switch back to standard mode to run your applications.

NOTE: This problem is solely confined to the Setup process. In no way does it affect how Microsoft Access runs in either standard or 386 enhanced mode.

If for some reason you cannot run Microsoft Windows in 386 enhanced mode, modify STFSETUP.IN_ as described below. Separate procedures follow for retail, upgrade, and ADK users.

Steps for Retail Users



  1. Make a backup copy of Disk1.
  2. On the backup disk, use an editor to modify the STFSETUP.IN_ file. Change the [System Paths] section from

       [System Paths]
          SYSTEMPATH = "" ? DETCMD.DLL GetWindowsSysDir
          WINDOWSPATH = "" ? DETCMD.DLL GetWindowsDir
          HARDDRIVELIST  = "" ? DETCMD.DLL GetAllValidLocalHardDrives
          NETDRIVELIST = "" ? DETCMD.DLL GetAllValidNetworkDrives
    
       to
    
       [System Paths]
          SYSTEMPATH = "" ? DETCMD.DLL GetWindowsSysDir
          WINDOWSPATH = "" ? DETCMD.DLL GetWindowsDir
          HARDDRIVELIST = "" ? DETCMD.DLL GetAllValidLocalHardDrives
          NETDRIVELIST = "" ? DETCMD.DLL GetAllValidNetworkDrives
          WINDOWSMODE = "" ? DETCMD.DLL GetWindowsMode 
  3. Then change the following

        DoShareStuff = +
         set CurrentDialog = DoShareStuff
         set MAKEBAK = "NO"
         ui start VSHARERunning
         ifstr $(ANSWER) == "NO"
    
       to
    
        DoShareStuff = +
         set CurrentDialog = DoShareStuff
         set MAKEBAK = "NO"
         ifstr $(WINDOWSMODE) != "ENHANCED"
            set ANSWER = "NO"
         else
            ui start VSHARERunning
         endif
         ifstr $(ANSWER) == "NO" 

Steps for Version 1.1 Upgrade Users

Single-user upgrades and Admin upgrades (setup /a) work fine. However, to run Setup or setup /n from the network with Windows in standard mode, you must first make the changes mentioned above to the STFSETUP.IN_ file in the ACCESS\INSTALL subdirectory on the network.

Steps for ADK Users

The ADK Setup works fine in Windows standard mode. However, before you create disks for your application, modify the SETUPWIZ.IN_ file (and optionally the CUST12MB.IN_, CUST14MB.IN_, and CUST720K.IN_ files) as follows:


  1. Change the following

       [System Paths]
           SystemPath =  "" ? DETCMD.DLL GetWindowsSysDir
           WindowsPath     =  "" ? DETCMD.DLL GetWindowsDir
           HARDDRIVELIST   = "" ? DETCMD.DLL GetAllValidLocalHardDrives
           NETDRIVELIST = "" ? DETCMD.DLL GetAllValidNetworkDrives
    
       to
    
       [System Paths]
           SystemPath =  "" ? DETCMD.DLL GetWindowsSysDir
           WindowsPath     =  "" ? DETCMD.DLL GetWindowsDir
           HARDDRIVELIST   = "" ? DETCMD.DLL GetAllValidLocalHardDrives
           NETDRIVELIST = "" ? DETCMD.DLL GetAllValidNetworkDrives
           WINDOWSMODE =  "" ? DETCMD.DLL GetWindowsMode 


    NOTE: Unlike the Microsoft Access version 1.1 corrections, the first two variables in the [System Paths] section of the ADK is case-sensitive.

  2. Add the test case around VSHARERunning by changing the following from

        DoShareStuff = +
         set CurrentDialog = DoShareStuff
         set MAKEBAK = "NO"
         ui start VSHARERunning
         ifstr $(ANSWER) == "NO"
    
       to
    
        DoShareStuff = +
         set CurrentDialog = DoShareStuff
         set MAKEBAK = "NO"
         ifstr $(WINDOWSMODE) != "ENHANCED"
            set ANSWER = "NO"
         else
            ui start VSHARERunning
         endif
         ifstr $(ANSWER) == "NO" 

NOTE: This is exactly the same change as the Microsoft Access version 1.1 change.



STATUS

Microsoft has confirmed this to be a problem in Microsoft Access version 1.1 and the Microsoft Access Distribution Kit version 1.1. This problem no longer occurs in Microsoft Access version 2.0 or the Microsoft Access Developer's Toolkit version 2.0.



MORE INFORMATION

Steps to Reproduce Problem



  1. Start Windows in standard mode (win /s), using the Microsoft Access version 1.1 Retail disks.
  2. Insert Disk 1 into drive A for 3.5-inch disks (or B for 5.25-inch disks).
  3. From the File menu in Program Manager, choose Run.
  4. Type a:\setup (or b:\setup) and press ENTER.
  5. Follow the instructions on your screen.

When you insert the last disk, you will receive this error.

Additional query words: gpf

Keywords : kbsetup
Issue type : kbbug
Technology :


Last Reviewed: November 4, 2000
© 2001 Microsoft Corporation. All rights reserved. Terms of Use.