New Configuration Options

It is possible to run Silicon Office as the Windows Shell, replacing Windows Explorer in Windows 9x. This can be very useful if you want to run your Silicon Office application on a terminal, and has the following benefits:

To set up Silicon Office as the Shell, you need to edit the WIN.INI file. Find the entry Shell=Explorer. This entry is usually only a few lines from the top of the file. "Comment out" the line by typing a semicolon before it, so you can easily change back later if you wish. Now, make a new line setting the shell to your Silicon Office application. Remember to include the location of the INI file. Your Shell line should look something like this:

Shell=C:\SILICON\SILICON.EXE C:\SILICON\MYAPP\SILICON.INI

To make sure users cannot access other parts of Windows by dragging your application window and clicking on the desktop, it is best to set Full Screen Mode from the Environment settings. Alternatively, you can manually type the entry FullScreenMode=1 into the [SiliconStatus] section of the INI file. Bear in mind when developing your application that there is no border on the main Silicon Office window in this mode, so you have slightly more room for your screens. It is advisable to develop the application in Full Screen Mode if you intend to run it as a Shell.

It is quite possible to use the Silicon Office EX WIN command to allow users to run other applications installed on the PC, but only the ones you want them to run. This could even be dependant upon the current user's status, allowing you to provide as much or as little access to the system as the user needs. For advanced, trustworthy users or system administrators, you could even allow an option to call EX WIN Explorer or EX WIN ProgMan, which would effectively reinstate the full Windows interface. Other users may not be allowed to run anything but your Silicon Office application itself.

If your program needs to know whether it has been run as the Shell, perhaps to behave differently or give different menu options, you can use the InfoSys function. One of the variables created by InfoSys is called SO_is_Shell, and is set to Y if Silicon Office is the Shell or N if not.