Administering Windows on NetWare Windows 3.0 Shared network installation accomplished via EXPALL.BAT. Setup /n to install UCFs. Setup /I avoids some problems with SETUP.EXE, and ARCNET, NICs set to IRQ 2, and/or I/O @ 2E0h. Customization through modification of WIN.SRC, SYSTEM.SRC (see below) Difficulty managing multiple *.GRP files Gen'l notes (these apply to 3.1 too): Load IPX, NETX, Login before running Windows. Increase size of DOS environment (SHELL=COMMAND.COM /P /E:704 in CONFIG.SYS), also use FILES=60 or greater. Don't logout from within Windows (set the prompt via batch file when shelling to DOS. @ECHO OFF C:\NOVELL\TASKID PROMPT Win3 DOS Task$_$P$G c:\dos\COMMAND /E:540 PROMPT $P$G C:\NOVELL\TASKID /U If network connection is lost, Windows 3.0 will generate errors: MANY retries will get you out. Win 3.1 connection behavior remains to be seen. Use same letter to map to shared windows drive. This is stored in several UCFs and other files. Be consistent with printer/port settings. Change these via Control Panel (vs. CAPTURE, WINTOOLS). This is per 3.1 docs Use map root as much as possible (MAP.EXE, LOGIN.EXE > v3.0) Use following minimum NET.CFG settings: SHOW DOTS=ON FILE HANDLES=60 BINDFIX.EXE and BINDREST.EXE should be dated later than 10-30-89. Avoid INT 2 for Arcnet and other NICs. Likewise avoid I/O @ 2E0h. Use alternative settings whenever possible. Use VPICDA.386 if using INT > 9. Use current file revisions (IPX, NETX, VIPX, etc) whenever possible. Avoid DOS SHARE.EXE When running a shared version of Windows on the network, make sure both the directory containing the shared copy of Windows and the directory containing the user's UCFs are in the path, and the the UCF directory comes first. Flag all shared Windows files as SRO Capture settings should include /NT, /A, TI=0. For problems with Windows and RPRINTER.EXE, try the following: 1) Change the printer port from LPTx to LPTx.OS2. Also try disabling the print manager if it is not already disabled. 2) Load all TSRs (including Rprinter) after NETX and before you go into Windows. 3) Try the NWWINFIX patch from Infinite Technologies, WINPRT.ZIP in NOVLIB Library 17. 4) Run SETUP /I to install Windows. This ignores autochecking of hardware and causes installation to be interactive 5) Install windows on a local drive. 6) Try himem.Sys /m:1 in CONFIG.SYS to make sure Windows sees a 100% IBM compatible BIOS. Other options are available. 7) Exclude difficult addresses such as video ram and NIC I/O within the SYSTEM.INI file. 8) Avoid IRQ's 2, 9, or 3 when installing the NIC in the workstation. 9) Put SPX ABORT TIMEOUT=1000 in the SHELL.CFG file found on the workstation. This often helps when the printer loses connection as seen at the Print Server's status screen. 10) Try an alternative I/O address 12) Avoid other TSR's at the workstation using both RPRINTER and Windows. Windows Print Manager spools print jobs to the location of the MS-DOS environment variable TEMP. If TEMP is not set, Print Manager will use the root of drive C. For diskless workstations, set the TEMP variable either to a RAM disk or to the location of a network directory (you must have full access to this directory). The TEMP variable may be set by placing a SET TEMP= statement in the AUTOEXEC.BAT file or network login script. For example, to spool to the network directory X:\USERNAME\WINUSER\TEMP, you would use the statement SET TEMP=x:\username\winuser\temp. Each user must have a personal TEMP directory. This will drastically effect network traffic if TEMP= points to a network directory! Windows 3.1 More network aware WINTOOLS functionality included in Fileman, printman, progman When you restart Windows, your system is reconnected to all the printers and network drives you were previously connected to. Fileman can map (even map root) net drives. Printman can attach to and monitor network queues Setup /A Easier to install and setup on NetWare LANs Setup options (/A, /N, /H) Custom *.INF, .SRC Customized install via SETUP /H & *.AIF These are the current revision of files required to run Windows 3.1: NETX.COM (version 3.26) IPX.OBJ (version 3.10) TBMI2.COM (version 2.1) IPXODI.COM (version 1.20) LSL.COM (version 1.21) Be sure to replace your copy of these files with the most recent revision. These files are available on CANU's KWIBBLE BBS, as well as the NOVLIB forum of CompuServe. Other suggested files include the following: BINDFIX EXE 63297 2-12-91 2:10p NETWARE DRV 56800 6-17-91 9:13a NETWARE HLP 25829 6-18-91 3:53p NETWARE PIF 545 4-26-90 1:37p NWPOPUP EXE 2116 4-23-91 10:54a TASKID COM 2623 12-19-90 3:48p TBMI COM 16817 12-19-90 4:34p VIPX 386 18998 11-21-91 1:40p VNETWARE 386 10079 5-16-91 8:20a VPICDA 386 11063 1-30-91 10:58a These are all available now as part of the WINUP4.ZIP available on NETWIRE and may be updated this week. If you are running Novell IPXODI.COM and LSL.COM, you need to upgrade these to versions 1.20 or higher. Use the files provided with Windows and copy them from the SYSTEM subdirectory of your Windows directory to the directory where your existing versions are located. To run Windows in standard mode, load the TBMI2.COM memory-resident utility when running Windows. Novell recommends that you create a batch file that will load this utility, start Windows, and then unload the utility when you quit Windows. The batch file could be named RUNWIN.BAT and look like this: TBMI2 WIN TBMI2 /U TBMI2 enables you to safely run applications that use the NetWare IPX and SPX functions in standard mode Windows or the MS-DOS 5.0 task switcher. If you enable 32-bit disk access and you are running the XMS shell rather than one of the standard NetWare shells (NETX.COM, etc.), you can further improve performance by setting the OverlappedIO entry in the [386Enh] section of your SYSTEM.INI file to on. When running Windows in 386 enhanced mode, swapping to a drive on a NetWare 286 server might make starting Windows take up to a minute. See Chapter 14, "Optimizing Windows", in the Microsoft Windows User's Guide for information about controlling the location of your swap file. If you are running Windows in 386 enhanced mode, you can adjust the way Windows handles your network drive mappings by using the Network option in Control Panel. Normally, when you quit Windows, all of your drive mappings are restored to the way they were before you started Windows, and all changes you made inside Windows are lost. If you clear the Restore Drives option, the mappings you made inside Windows will remain when you quit Windows. Also, each instance of MS-DOS Prompt you start from Windows typically has its own set of drive mappings. Changes you make in one instance do not affect another. If you set the NW Share Handles option, drive mappings will instead be global, and changes made in one instance of MS-DOS Prompt will affect all other applications. If you are running NetWare 2.1x, setting NWShareHandles increases the number of workstations that can be connected to the server before the server runs out of available connections. When using the MAP and MAP DELETE commands from File Manager, Print Manager, or Control Panel, pay attention to the state of the Permanent check box. If this option is checked when you make a connection, the connection is automatically made each time you restart Windows. To stop reconnecting, use the MAP DELETE command with the Permanent option checked. If the option is not checked when you use the MAP DELETE command, the connection is removed for the current Windows session, but is reconnected when you restart Windows. 3.1 SETUP Configure NWPOPUP.EXE to ignore broadcast messages from within Windows, or run CASTOFF ALL before running SETUP. A 25th line message while running SETUP will hang the workstation. If you configured your remote-boot workstation to run Windows version 3.0, you may be loading a program called RIPLMEM.EXE or RPLMEM.EXE in your AUTOEXEC.BAT. This program is no longer required for running Windows 3.1 and is removed from your AUTOEXEC.BAT file when you set up Windows. If this program is not being loaded from your AUTOEXEC.BAT file, you should remove it manually. Upgrading from Windows Version 3.0 First, be sure to make backup copies of any data files and programs you have added to your system. It's especially important to backup SYSTEM.INI, WIN.INI and the contents of your SYSTEM\ subdirectory. Upgrading does the following: Preserves existing system-information settings Updates existing device drivers that were supplied with Windows version 3.0 Maintains all installed drivers that were not supplied with Windows Preserves settings relating to the use of your systems upper-memory area Note You can run Windows 3.1 concurrent with 3.0. It's not recommended though, as there are often changes to be made to startup files, and application related files (such as DLLs) are copied to the 3.0 directory. Before you set up Windows, you must decide how you want users to run Windows, ie. you first need to decide where you want to put the Windows files. You can set up one of the following configurations: A full copy of Windows on the users hard disk or in the users personal Windows directory on a network. In this configuration, all Windows files are located in the users Windows directory or its subdirectories. A shared copy of Windows where some of the users files are located in the users Windows directory, but most of the files are located in the shared Windows directory on the network server. Note that the users Windows directory can be either on the users hard disk, or on a network server. Several things will affect where you install Windows. Window's 386 Enhanced mode can swap memory to disk when available RAM is exhausted. This may place a heavy load on your network if your workstations have little RAM, and you install UCFs on the network. On the other hand, a small network running a powerful topology such as 16mb/s Token Ring, could use diskless workstation with adequate RAM and still acheive good Windows performance. The type of network topology you use, the type of applications your users will run, and the physical capabilities of your network and workstations will all affect how you install Windows. The following table presents a matrix of performance and administrative issues related to the placement of these files: Perceived Performance Ease of Administration Space Requirements: Local/Network Local Drive Installation Best Poor 6.5-10.5 MB@/0 Shared Network drive, local UCFs Better * Better 300 KB/16 MB Shared network drive, network UCFs Good * Best 0/16.5 MB * Workstation RAM and topology dependent (eg. 386/16 w/2MB on Arcnet slow, 386/16 w/8MB on Arcnet OK, 386/16 w/8MB on Ethernet good). @ Minimum requirements include no optional components, network, or printer. Maximum requirements include all components installed, including a printer and network. The location of the Windows files and UCFs will be based on a combination of factors, including network performance, network load, workstation RAM and administrative requirments. You should feel free to try whichever combination suits your environment. Also realize that a decision to try it one way does not preclude other operation another way. New with 3.1 are two standalone SETUP options: Express and Custom. With the express method, you only need to supply the printer and port. With the custom method, new options include non-installation of accessories, and other portions of program. 3.1 SETUP also required registration information. You will be prompted for a username, or group and company name, depending on the method of SETUP you use. SETUP will not continue unless this information is provided. You may provide it automatically, however, via the automated setup procedures described below. The easiest method to manage a Windows LAN is to install a full copy of Windows to the server. This was accomplished with the EXPALL.BAT file with 3.0. 3.1 has a new SETUP option: /A, which decompresses all files, copies them to a server directory, renames them, and marks them RO. You can then use this directory as your shared Windows directory, or use it to install full or partial copies of the program, or both. To place Windows files on a network server: 1 Insert the Windows version 3.1 disk #1 into a floppy disk disk drive. 2 At the MS-DOS prompt, type the drive letter of the floppy disk drive. 3 Type setup /a 4 Follow the instructions on your screen. * Note: You are prompted to specify the network drive and directory you want the Windows files copied to. You're also prompted to specify group registration information (group name and company name) which is stored and used when individual workstations are set up. To install a full copy of the Windows files: In this situation, you create your own copy of Windows on your system (can be a server directory of a local one). All Windows files are copied to your hard disk. To set up Windows, you connect to the network server, or set your drive to the floppy containing Disk1, and type setup (do not use the /n network option), and follow the instructions on the screen. To set up a copy of Windows from a shared network directory 1 Connect to the network. 2 Change to the directory where Windows is located on the network (for example, W:\PROGS\WIN31). 3 At the MS-DOS prompt, type setup /n 4 Follow the instructions on the screen. Setup will ask where it should put your Windows files. Type the path of your personal Windows directory or server drive/directory (MAP ROOT the drive and directory beforehand). Notes If you have a set of Windows disks, do not attempt to set up a network copy of Windows from the disks (by typing setup /n). You can run setup /n only if you are setting up Windows from a network server. You can modify the Setup program so that it always sets up a shared copy of Windows on a workstation, even if a user specifies a different Setup option. Setup /n copies only the files that are relevant to the users system and desktop preferences (for example, the group (.GRP) files and initialization (.INI) files). All other Windows files are found in the shared network directory. Although setup time can vary, depending on the speed of your system and whether you use Express or Custom Setup, you should expect to spend no more than 20-30 minutes to set up Windows. Using Automated Setup: Setup /h The Automated Setup option uses information you specify in a system settings file to install Windows quickly and easily, with little or no user interaction. Automated Setup is useful if you have to set up many workstations, or if you want users to be able to set up on their own workstations without having to make any system configuration choices. Automated Setup can be used for setting up a shared copy of Windows or a non-shared copy, and you can use it if you are setting up Windows from a network drive or from the Windows Setup disks. To use the Automated Setup option 1 Create a system settings file for each workstation configuration and place the system settings files in a directory where users have rights to open and read files, or copy it to the workstation disk. 2 From the workstation, either you or a user can set up Windows by using the Automated Setup option. If you are setting up Windows from a network, connect to the network drive and change to the directory where the Windows Setup files are located. If you are setting up Windows from the Windows Setup disks, change to the letter of the floppy drive. 3 If you want to run a non-shared copy of Windows from a local drive or a network drive, type setup /h:[drive:\path]filename, where filename is the name of the system settings file that contains your configuration settings. If the system settings file is not in the directory from which you ae setting up Windows, you must include the path. If you want to run a shared copy of Windows from the network, type setup /h:[drive:\path]filename /n. For example, if you create a system settings file called SETUPVGA.AIF in the same directory as the Setup program, you would type the following command line to set up a full copy of Windows on the workstation: setup /h:setupvga.aif If you want to run a shared copy of Windows from the network in this example, connect to the network drive and directory where the Windows Setup files are located, and type the following command: setup /h:setupvga.aif /n Creating the System Settings File Windows comes with a template system settings file called SETUP.AIF, which you can copy or modify to create your own system settings file. The SETUP.AIF file is located on Microsoft Windows 3.1 disk #1. You can modify it with any text editor that can save text (ASCII) files. The system settings file has the following format: [sysinfo] [configuration] [windir] [userinfo] [dontinstall] [options] [printers] [endinstall] NOTE Some of the entries require values from the Windows SETUP.INF, CONTROL.INF, and WIN.INI files. When you use setup /a to place Windows files on a network server, these files are copied to the shared Windows directory. The WIN.INI file is called WIN.SRC in this directory. You can also find the SETUP.INF and CONTROL.INF files on Microsoft Windows 3.1 disk #1. All of these files are text files that you can view with a text editor or print. [sysinfo] This section specifies whether you want the System Configuration screen to be displayed during Setup. Specify showsysinfo=yes to display the screen or showsysinfo=no if you don't want to display the screen. (The default is no.) The System Configuration screen displays the configuration settings specified in the system settings file. You may want this screen to be displayed during Setup so that you or a user can view these settings and either confirm or change them before continuing with the Setup program. [configuration] This section specifies the various devices on your system. If a configuration entry is not included in the file, the detected or default device will be used. If you are updating Windows, Setup ignores some of these entries and uses the devices that are already installed. If you want to force the update and override the installed device, precede the value with an exclamation point (!), for example, display = !vga. Only the Machine, Display, Mouse, and Network devices require an exclamation point for overriding the installed device when updating Windows; any Keyboard, Language, or Kblayout values specified will automatically override the installed device. Use To machine= Specify the type of machine. Use one of the profile strings found in the [machine] section of the SETUP.INF file. Example: machine=ibm_compatible display= Specify the type of display. Use one of the profile strings found in the [display] section of the SETUP.INF file. Example: display=vga mouse= Specify the type of pointing device. Use one of the profile strings found in the [pointing.device] section of the SETUP.INF file. Example: mouse=ps2mouse network= Secify the type of network and the version number. Use one of the profile strings found in the [network] section of the SETUP.INF file to specify the network. Example: network=novell. Use one of the version numbers found in the [novell.versions] section to specify the version of the shells you are setting up. Separate the version number from the network type with a slash (/). Example: network=novell/00032100 (This sets up NetWare LANs with shells greater than 3.21.) keyboard= Specify the type of keyboard. Use one of the profile strings found in the [keyboard.types] section of the SETUP.INF file. Example: keyboard=t4s0enha language= Specify the language. Use one of the profile strings found in the [language] section of the SETUP.INF file. Example: language=enu kblayout= Specify the keyboard layout. Use one of the profile strings found in the [keyboard.tables] section of the SETUP.INF file. Example: kblayout=nodll Note If you want to set up a third party driver that is not included in the Windows Setup disks, you must modify the SETUP.INF or CONTROL.INF file to include the third party driver in the list of drivers that can be set up. Use the vendor's OEMSETUP.INF as a template. [windir] This section specifies where to put the users Windows files. If Windows is already installed in the specified directory, Setup updates it. If you do not specify a directory, or if the specified directory is not valid, a dialog box appears during Setup asking for the directory in which you want to set up Windows. For example, if you want to install Windows in the WINDOWS directory on drive C, specify c:\windows in this section. [userinfo] This section specifies the user and company name. The first line specifies the user name. This line is required unless you are setting up a shared copy of Windows (setup /n). The second line specifies the company name, and is optional. Both names can be up to 30 characters long and must be enclosed in double quotation marks "" if they include blank spaces, for example: "John Smith" "My Company" If you do not specify a user name, a dialog box appears during Setup asking for the name. If you use setup /n to set up a shared copy of Windows, the [userinfo] section is ignored because the information was supplied when you copied Windows files to the server (setup /a). [dontinstall] This section specifies any optional Windows components that you do not want to set up. If this section is not present or is empty, all optional components will be set up. The following list shows the components that you can choose not to install. Specify If you do not want to install readmes Readme Files accessories Accessories games Games screensavers Screen Savers bitmaps Background Wallpapers [options] This section specifies whether a user can set up applications during Setup, and whether to start the Windows Tutorial at the end of Setup. If you dont want any of these options, you can omit tis section. You can specify the following entries in this section: Specify To setupapps Set up applications interactively during Setup. A dialog box will appear during Setup that the user can use to choose which applications to set up in Program Manager groups. autosetupapps Automatically set up all applications found on the users hard disk. * Note: You should not specify both setupapps and autosetupapps , but if you do, all applications on the hard disk will be set up. tutorial Start the Windows Tutorial at the end of Setup. [printers] This section specifies which printers to install during Setup. To specify a printer, you specify a printer name and a port. Use one of the descriptive strings found in the [io.device] section of the CONTROL.INF file to specify the printer name. The printer name must be enclosed in double quotation marks "" if it contains blank spaces. Use one of the values found in the [ports] section of the WIN.INI file to specify the port. The printer name and the port must be separated by a comma. For example, to specify the HP LaserJet III printer connected to port LPT1, include the following line in this section: HP LaserJet III ,LPT1: If you don't want to install any printers during Setup, omit this section. [endinstall] This section specifies what should happen after Windows is successfully installed. You can specify whether Setup should modify the CONFIG.SYS and AUTOEXEC.BAT files and then exit to DOS, restart Windows, or restart your system. Specify If you want Setup to configfiles = modify Make all changes to the CONFIG.SYS and AUTOEXEC.BAT files for you. When Setup changes these files, the previous CONFIG.SYS and AUTOEXEC.BAT files are saved as CONFIG.OLD and AUTOEXEC.OLD and stored in the Windows directory in case you need to refer to them later. If you are setting up Windows on a diskless workstation, the modify option is not available. (If you already have a file called CONFIG.OLD or AUTOEXEC.OLD in the Windows directory, the previous CONFIG.SYS or AUTOEXEC.BAT file will be renamed CONFIG.000 or AUTOEXEC.000, or with the next consecutive number that does not conflict with a file you have.) configfiles = save Save proposed changes to the CONFIG.SYS and AUTOEXEC.BAT files in alternate files (CONFIG.WIN and AUTOEXEC.WIN) stored in the Windows directory. The CONFIG.SYS and AUTOEXEC.BAT files are not changed; you must make these changes later. (If you already have a file called CONFIG.WIN or AUTOEXEC.WIN, the proposed files will be named CONFIG.000 or AUTOEXEC.000 instead, or named with the next consectutive number that does not conflict with a file you have.) endopt = exit Return to DOS on completion of Setup. endopt = restart Restart Windows on completion of Setup. endopt = reboot Restart your system on completion of Setup. This option is not available if you are setting up a shared copy of Windows (setup /n). If this setting is specified and the user includes the /n option in the setup command, Setup will return to DOS without rebooting after completing the installation. Sample System Settings File The following system settings file installs Windows on a PC-compatible computer, with a VGA display, Microsoft mouse, NetWare LAN using version 3.21 shells, and 101-key U.S. keyboard. The System Configuration screen is displayed for confirmation and Windows files are put in the C:\WINDOWS directory. The games are not installed. An HP LaserJet III printer is installed on LPT1 and the CONFIG.SYS and AUTOEXEC.BAT fils are modified by Setup. After Windows is set up, Windows is restarted. [sysinfo] showsysinfo = yes [configuration] machine = ibm_compatible display = vga mouse = ps2mouse network = network=novell/00032100 keyboard = t4s0enha language = enu kblayout = nodll [windir] c:\\windows [userinfo] users name company name [dontinstall] games [options] [printers] HP LaserJet III ,LPT1: [endinstall] configfiles = modify endopt = restart You can modify the Setup program so custom groups with your applications are set up automatically when a user sets up Windows. You can also limit some of the Program Manager functionality if you want to prevent users from modifying groups or running certain applications. Customizing Setup If you want users to run a customized version of Windows, you can modify the SETUP.INF file before setting up Windows for the workstation. SETUP.INF is a text file that is included with Windows and located on Windows Setup disk #1. If you use setup /a to copy Windows files to a server, the SETUP.INF file, along with the other Windows files, is copied to the server. The Setup program uses the SETUP.INF file to install Windows files, create Program Manager groups, and put applications in Program Manager groups. By modifying this file, you can customize the groups that are set up in Windows. You can change default Program Manager groups, create your own groups, and add applications to these groups. You should only modify the SETUP.INF file if you want to set up a customized Windows desktop; you do not need to modify this file if you want the default Windows configuration. To modify the SETUP.INF file, use any text editor that can save files as text (ASCII) files. The structure of SETUP.INF is similar to the Windows Initialization (INI) files; each section is identified by a header in [square brackets], with entries and settings under section headers. Adding Groups to Program Manager The [progman.groups] section of the SETUP.INF file lists the groups that appear in the Program Manager window when you set up a new copy of Windows. Each group is defined by a variable and a title. For example, the [program.groups] section may look like this: [progman.groups] group3=Main, 1 group4=Accessories group5=Games group1=StartUp The variable must be unique and is used later in the SETUP.INF file to specify the contents of the group. The 1 following the Main group entry specifies that the group will not be minimized by default. You can add any group to this section that you want Windows to create during Setup. If you are updating Windows from 3.0 to 3.1, Setup uses the [new.groups] section instead of the [progman.groups] section. The [new.groups] section lists groups that are to be added or modified. For example, the [new.groups] section may look like this: [new.groups] group1=StartUp group2=Accessories Notice that the variable for the Accessories group is different in the [new.groups] and [progman.groups] sections. The variable is used later in the SETUP.INF file to specify what applications get added to the group. While the group4 variable lists all program items to add to the Accessories group, the group2 variable lists only the new program items to add if you are updating Windows. To add a group to Program Manager In the [progman.groups] section of the SETUP.INF file, type a unique variable and the name of the group you want to add. For example, group6=MyGroup. If you are updating Windows 3.0 to Windows 3.1, add the group to the [new.groups] section instead of to the [program.groups] section. If this SETUP.INF file will be used both for updating and for new installations, add the group to both the [program.groups] section and the [new.groups] section. Adding Applications to Program Manager Groups The SETUP.INF file lists, by group, all applications that appear as icons in Program Manager. The groups, identified by the variables assigned to them in the [program.groups] and [new.groups] sections, are listed after the [progman.groups] section in the SETUP.INF file. The information about each application is specified under the group section heading. For example, the Main group, identified by the group3 variable, has entries that look like this: [group3] File Manager , WINFILE.EXE Control Panel , CONTROL.EXE Print Manager , PRINTMAN.EXE Clipboard Viewer , CLIPBRD.EXE DOS Prompt , DOSPRMPT.PIF, PROGMAN.EXE, 1 Windows Setup , SETUP.EXE PIF Editor , PIFEDIT.EXE Tutorial , WINTUTOR.EXE Read Me , WRITE.EXE README.WRI To add an application to a Program Manager group 1 Open the SETUP.INF file and find the group section where you want the application icon to appear. 2 Type the program title in double quotation marks (" ") followed by a comma (,) and then the application filename. If the application is not in the Windows directory, include the path. For example, Microsoft Word , k:\word\word.exe 3 If the icon you want to use is not in the program file for your application, you can specify a program file from which to extract the icon. For example, Microsoft Word , k:\word\word.exe, progman.exe 4 If the icon you want to use is not the first icon in the program file you have specified, you can specify an offset number. If you want to use the nth icon, specify n-1. For example, to use the third icon found in the PROGMAN.EXE file for Microsoft Word program item, specify the following entry: Microsoft Word , k:\word\word.exe, progman.exe, 2 To use the second icon found in the WORD.EXE file, specify the following entry: Microsoft Word , k:\word\word.exe,,1 If the application is on a network, make sure the user has access to the network drive. After Setup, you may also want to specify a working directory for user files so that personal files dont remain in the shared application directory. You or a user can specify a working directory by modifying the Program Item Properties in Program Manager. If you want the application files to be copied to the users Windows directory, you can specify that this occur during Setup. Copying Additional Files to a Users Windows Directory You can use the [net] section of the SETUP.INF file to specify additional files that you want copied to a users Windows directory during Setup. The files you want to copy must either be located in the same directory as the Windows files on the network server, or on a floppy disk. If the files are located on a floppy disk, you must first ssign a disk number in the [disks] section of the SETUP.INF file and then specify that disk number in the [net] section. To specify an additional disk that Setup can prompt for In the [disks] section of the SETUP.INF file, type the disk number, path of the disk, name of the disk, and a file on the disk (used to determine if the disk is in the drive). For example, 7 =. , My Additional Disk , myapp.exe . If the user will be setting up Windows from the Window Setup disks, use a period to specify the path of the extra floppy disk. This tells Setup to look for the disk in the same drive as the Windows Setup disks. If the user will be setting up Windows from a network, specify the letter of the floppy for the path of the disk, for example, A:. To copy additional files to a users system In the [net] section of the SETUP.INF file, type the disk number, a colon, the filename, and a description (optional) of the file you want to copy. The disk number refers to the Windows setup disk the file is located on. If the files are located on the network, you can specify any disk number - the number will be ignoredbut you must still specify a number. If the files are on a floppy disk, use the number that you specified in the [disks] section. Include a description only if you want a message to appear during Setup that indicates when this file is being copied to the users Windows directory. The following are examples of possible entries in the [net] section of SETUP.INF: 7:NEW.PIF 7:NEW.PIF, Network Application Settings These examples copy the NEW.PIF file to the users Windows directory during Setup. In the second example, the description Network Application Settings appears on the screen while the file is being copied. Setting Up a Third Party Device Driver If you want users to set up a third party device driver that is not included on the Windows Setup disks, and you want that driver to appear in the list of drivers that Setup displays, you can modify the SETUP.INF file. Look for the manufacturer's OEMSETUP.INF file on their support diskettes. Removing Hardware Devices From Lists in Setup During Setup, users may be required to select a hardware device to install on their systems from a list of supported devices. For example, when setting up a printer, the user is presented with a list of printers. The user must know what kind of printer the system is connected to and select that printer from the list. Users may also have to select their particular display, pointing device, network, or other hardware devices. You can remove any devices that your users do not have from these lists by modifying the SETUP.INF file and the CONTROL.INF file. Be careful not to remove a device that a user might have: this may cause the Setup program to run incorrectly. To remove a printer from the list of printers In the [io.device] section of the CONTROL.INF file, delete the entry for the printer you do not want to display. To remove other hardware devices from the lists in Setup In the SETUP.INF file, delete the entry for the hardware device you do not want to display. You can delete entries from the following sections. [display] [network] [system] [machine] [keyboard.types] [pointing.device] If you remove an entry from the SETUP.INF file or the CONTROL.INF file, the entry will not show up when users install a printer from Control Panel or change system settings by using the Setup program rom within Windows. Forcing the Network Setup Option If you want to make sure that users set up a shared copy of Windows (setup /n), you can modify the SETUP.INF file so that even if the user types setup without the /n option, the Setup program uses the /n option to install a shared copy of Windows on the workstation. You do this by modifying the netsetup entry in the [data] section of the SETUP.INF file. To force the network Setup option In the [data] section of the SETUP.INF file, specify the following: netsetup= true The default entry is netsetup= false, which allows users to run any of the Setup options. Controlling Program Manager Functionality There are several options available to prevent users from modifying their group configurations or running certain applications. You can disable some of the commands in Program Manager or remove the File menu altogether. You can also control to what extent a user can modify program groups. You specify these restrictions by modifying the PROGMAN.INI file. Modifying the PROGMAN.INI File The PROGMAN.INI file is a Windows initialization file located in the users Windows directory. The PROGMAN.INI file is created when a user sets up Windows; it does not exist on the Windows Setup disks or the shared network directory after you copy files by using setup /a. To modify the PROGMAN.INI file, you must exit Windows and then use any text editor that saves files as text (ASCII) files. When you start Windows, the changes will take effect. If you have many workstations to set up, you may want to create a PROGMAN.INI file with the settings you want and then have the file copied to the users Windows directory during Setup. The PROGMAN.INI file that gets copied during Setup will overwrite any existing PROGMAN.INI file in the users Windows directory. Setting Program Manager Restrictions You can specify Program Manager restrictions by modifying the PROGMAN.INI file. You can specify as many restrictions as you like, depending on the functionality you want users to be able to access. To specify restrictions in the PROGMAN.INI file 1 Exit Windows and open the PROGMAN.INI file with a text editor that can save files as text (ASCII) files. 2 In the PROGMAN.INI file, add a [restrictions] section if one does not already exist. 3 In the [restrictions] section, specify any of the restrictions listed below. You can specify any of the following settings in the [restrictions] section of the PROGMAN.INI file. Specify To do this NoRun=1 Disable the Run command on the File menu. The Run command will appear dimmed on the File menu and the user will not be able to run applications from Program Manager unless the applications are set up as icons in a Program Manager group. NoClose=1 Disable the Exit Windows command on the File menu. Users will not be able to quit Program Manager through the File Menu or the Control menu (the Exit Windows and Close commands will be dimmed), or by using the ALT+F4 key combination. NoSaveSettings=1 Disable the Save Settings on Exit command on the Options menu. The Save Settings command will appear dimmed on the Options menu and any changes that the user makes to the arangement of windows and icons will not be saved when Windows is restarted. This setting overrides the SaveSettings= entry in the [Settings] section of the PROGMAN.INI file. NoFileMenu=1 Remove the File menu from Program Manager. All of the commands on that menu will be unavailable. Users can start the applications in groups by selecting them and pressing ENTER, or by double-clicking on the icon. Unless you have also disabled the Exit Windows command, users can still quit Windows by using the Control menu or the ALT+F4 key combination. EditLevel=n Set restrictions for what users can modify in Program Manager. You can specify one of the following values for n. Use To do this 0 Allow the user to make any change. (This is the default value.) 1 Prevent the user from creating, deleting, or renaming groups. If you specify this value, the New, Move, Copy, and Delete commands on the File menu are not available when a group is selected. 2 Set all restrictions in EditLevel=1, plus prevent the user from creating or deleting program items. If you specify this value, the New, Move, Copy, and Delete commands on the File Menu are not available at all. 3 Set all restrictions in EditLevel=2, plus prevent the user from changing command lines for program items. If you specify this value, the text in the Command Line box in the Properties dialog box cannot be changed. 4 Set all restrictions in EditLevel=3, plus prevent the user from changing any program item information. If you specify this value, none of the areas in the Properties dialog box can be modified. The user can view the dialog box, but all of the areas are dimmed. To enable any of the commands or remove any of the EditLevel restrictions, either remove the entry from the PROGMAN.INI file, or set the value to 0. Examples The following examples describe how you can combine different Program Manager restrictions. If you dont want users to run any programs from Windows other than ones that you set up in Program Manager groups, specify the following entries in the [restrictions] section of the PROGMAN.INI file. NoRun=1 EditLevel=4 Note Some applications allow users to start other applications, for example File Manager. So if you do not want users to start other applications, make sure you do not include them in Program Manager groups. If you want users to have a standard work environment where they cannot run programs from Windows other than ones you have set up in Program Manager groups, and you do not want any of their window or icon positions saved when Windows is restarted, specify the following entries in the PROGMAN.INI file. NoRun=1 NoSaveSettings=1 EditLevel=4 If you do not want users to be able to exit Windows, specify the following entry in the [restrictions] section of the PROGMAN.INI file. NoClose=1 Other Options There are other options available to you for setting up a users environment. In Windows 3.1, you can use environment variables in PIF files so that you can create a single PIF to be used on various workstation configurations. You can also set up password protection for a workstation by setting up a screen saver and specifying a password. You can also set up shared Program Manager groups and change the name of the Startup group. The rest of this section describes these two tasks. Setting Up Shared Program Manager Groups Program Manager groups may be shared over the network by making them available to users as read-only files. A user cannot change the contents of a shared group. The Move and Delete commands on the File menu in Program Manager are not available for shared groups. A user can choose the Properties command to review file properties of items in a shared group, but cannot change them. To share a Program Manager group, you must mark the group file (*.GRP) as read-only and place it in a shared network directory. At the workstation, you or a user can create a group and use the group file from the shared network directory. To set up a shared Program Manager group 1 Create a group file by using Program Manager to create a group and add program items to it. 2 Copy the group file (.GRP) to a shared network directory and mark it as read-only. 3 From each workstation, use Program Manager to set up the group. In the Group File box in the Program Group Properties dialog box, specify the location and name of the group file in the shared network directory. If you don't want to use Program Manager to set up the group, you can modify the PROGMAN.INI file for the workstation. In the [groups] section of the PROGMAN.INI file, add a unique variable and the name and path of the group file. For example, group8=z:\winshare\programs.grp If you want a shared Program Manager group to be set up when users install Windows for their workstations, you must create a PROGMAN.INI file that includes the shared group, and then have it copied to the users Windows directory during Setup. Changing the Name of the Startup Group The Startup group is a new feature in Windows 3.1. When you start Program Manager, each program item in the group called StartUp also gets started. The program items are started in the order of their position in the window. If you want to change the name of the Startup group, you can modify the PROGMAN.INI file and change the default title StartUp to something else. For example, if you change the default to my desktop , every program item in the group called my desktop would be started. To change the name of the Startup group In the [Settings] section of PROGMAN.INI, specify the following setting: Startup= name You can specify any string for name. If you leave the string blank, no group will be used as the Startup group. Note The WIN.INI settings for run= and load= are independent of the Startup group. If you specify programs in the WIN.INI file, they will be run and/or loaded before the programs specified in the Startup group. Optimizing and Troubleshooting Memory Considerations * If a user has problems running Windows or other applications with network software loaded in the high-memory area (the HMA, or first 64K of extended memory), try disabling the networks HMA option. Consult your network documentation for more information. * Some memory managers, such as EMM386, 386MAX, and QEMM, can load networks and other device drivers in the upper-memory area between 640K and 1 MB. If the network is loaded in the upper-memory area between 640K and 1 megabyte and a user has problems running Windows, try loading the network in conventional memory. Windows and the Network * Windows does not support the Execute-Only permissions provided by several networks. These permission settings work for applications run outside of Windows, but neither execute-only Windows applications or DOS applications can be run from within Windows. * To view a directory where the user does not have access to the parent directory, set the current working directory to a visible directory before starting Windows. For more information, see your network documentation. File Manager displays the current directory and any subdirectories, regardless of whether or not the parent directory could be displayed. * If you connect to a network drive that supports long filenames, you will be able to see the long filenames in a directory window. Using File Manager, you can move and copy files with long filenames, however you cannot perform other operations on them, such as opening or running. If you move or copy a file with a long filename to a directory that doesnt support long filenames, File Manager will propose a shorter name. Extended attributes are preserved when you move or copy files with long filenames. SYSTEM.INI You should familiarize yourself with this file and it's settings. Print and read the SYSINI*.TXT (3.0) or SYSINI.WRI (3.1) files for this information. SYSTEM.INI is one of the UCFs that control how Windows runs. It's structure is similar to other Windows control files, such as WIN.INI, SETUP.INF, and OEMSETUP.INF. The files are divided into sections, with each section containing specific settings. The file has the following structure: [section name] keyname=value The structure is illustrated below: [boot] 386grabber=vga.gr3 network.drv=1 [386Enh] display=*vddvga ;network=*vnetbios, *vnetware, *vipx network=vnetware.386, vipx.386 ;device=*vpicd device=vpicda.386 The enclosing brackets ([ ]) are required, and the left bracket must be in the leftmost column on the screen. The keyname=value statement defines the value of each setting. A keyname is the name of a setting. It can consist of any combination of letters and digits in uppercase or lowercase, and it must be followed immediately by an equal sign (=). The value of the setting can be an integer, a Boolean value, a string, or a quoted string, depending on the setting. If you want to enable a Boolean setting, you can set the value to: True, Yes, On, or 1. If you want to disable the Boolean setting, you can set the value to: False, No, Off, or 0. There are multiple settings in most sections. You can include comments in initialization files. You must begin each line of a comment with a semicolon (;). It's often a good practice to save the original setting by placing a semicolon at the beginning of the line before making changes to the setting on another line. See the sample above for an example. Any changes you make to SYSTEM.INI settings do not take effect until you restart Windows. You should know the meaning of the following SYSTEM.INI settings which effect networks: [Boot] Network.drv= [Standard] Int28Filter= NetHeapSize= [386Enh] AllVMsExclusive= EMMExclude= FileSysChange= InDOSPolling= Int28Critical= NetAsyncFallback= NetAsyncTimeout= NetDMASize= Network= PSPIncrement= ReflectDOSInt2A= TimerCriticalSection= TokenRingSearch= UniqueDOSPSP= NetHeapSize= The following settings in the SYSTEM.INI file (under [386Enh]) affect temporary swap files: Paging=yes PagingDrive=F: MinUserDiskSpace=1024 MaxPagingFileSize=1024 The following setting in [NonWindowsAPP] section affects where Windows puts application swap files when running in either standard or real modes: SwapDisk=c:\temp If you are upgrading or changing your Windows configuration, the SETUP program may not correctly modify your SYSTEM.INI file. Note the changes you have made or make a copy to compare the new SYSTEM.INI file to before changing or upgrading a modified configuration. Some network adapter cards require the ExcludeHighRegion (or EMMExclude) entry in the [386Enh] section of the SYSTEM.INI file to be set to the memory range used by the card. For example, many Arcnet cards require EMMExclude=D000-DFFF in SYSTEM.INI and a similar line on the memory manager device driver line to work correctly. Changing Memory Settings If you are having problems running Windows in 386 enhanced mode, you may need to change the way Windows and your network are set up to use memory. The network may require a larger buffer for direct memory access (DMA) data transfers than Windows normally provides. Or, your network may not be able to run unless Windows is prevented from using a portion of memory between 640K and 1 MB to map unused address space. To prevent Windows from scanning a part of memory 1 Find the [386enh] section of the SYSTEM.INI file. 2 Add or modify the EMMExclude setting to specify a range of memory addresses that Windows should not scan or use. The range must be beween A000 and EFFF. The starting value is rounded down, and the ending value is rounded up to a multiple of 16K. You can specify more than one range by including more than one EMMExclude entry. For example, to specify that Windows not scan the addresses between C800:0000 and D000:0000, type the following: EMMExclude=C800-CFFF 3 Save your SYSTEM.INI file and restart Windows. If you want to specify a range smaller than 16K, you can use the ReservedHighArea entry instead of the EMMExclude entry. For example, to specify that Windows not scan the addresses between C000:0000 and C400:0000, type the following: ReservedHighArea=C000-C4000 To change the size of the direct memory access buffer 1 Find the [386enh] section of the SYSTEM.INI file. 2 Add or modify the NetDMASize setting to specify how much memory (in kilobytes) Windows should reserve for direct memory access. The default value is 0 for ISA machines (IBM PC/AT or compatible) and 32 for Microchannel machines (IBM PS/2 or compatible). For example, if you want Windows to provide a 32K buffer for direct memory access, specify the following: NetDMASize=32 3 Save your SYSTEM.INI file and restart Windows. Adjusting the Size of Data-Transfer Buffers If an application does not run correctly (either Standard or 386 Enhanced mode), you may have to increase the buffer for transferring data over the network. To increase the size of the data transfer buffer 1 Find the [standard] or [386enh] section of the SYSTEM.INI file, depending on which mode youre having problems in. 2 Add or modify the NetHeapSize setting to specify the maximum buffer size (in kilobytes) required for data transfers. The default value is 8 in the [standard] section and 12 in the [386enh] section. All values are rounded up to the nearest 4K. For example, to make the buffer size 16K, specify the following: NetHeapSize=16 3 Save your SYSTEM.INI file and restart Windows. Disabling File-Handle Caching By default, Windows keeps a minimum of 14 handles open, which may limit the number of users that can run a shared copy of Windows from a single server. You can modify the SYSTEM.INI file to decrease the number of cached file handles. The minimum is 2. If you decrease the number of cached file handles, Windows may slow down, but more users should be able to access Windows from a single server. To decrease the number of cached file handles 1 Find the [boot] section in the SYSTEM.INI file. 2 Add or modify the CachedFileHandles setting to specify the number of cached file handles. For example, to set the number of cached file handles to 8, specify the following: CachedFileHandles=8 3 Save your SYSTEM.INI file and restart Windows. Running Non-Windows Applications If you have problems running a network-specific application and the application is a non-Windows application, you may need to run the application in exclusive mode. You can use PIF Editor to do this. If the application creates or deletes files, it may not be running exclusively even if it has be set to run in exclusive mode. This is because Windows is alerted every time a file is manipulated. You can prevent this alert by changing the FileSysChange setting in your SYSTEM.INI file. To prevent Windows from getting file manipulation messages 1 Find the [386enh] section of the SYSTEM.INI file. 2 Specify FileSysChange=no in this section. 3 Save your SYSTEM.INI file and restart Windows. Other SYSTEM.INI Items Some networks require the TimerCriticalSection entry in the [386Enh] section of the SYSTEM.INI file to be set to a value of 10000 or greater. For NetWare LANs using NETBIOS or experiencing timeout related problems (ie communiction errors), this and related NET.CFG settings should be investigated. If you have problems running a non-Windows application or running the DOS Prompt, you may also need to adjust this section. TimerCriticalSection prevents switching or multi-tasking for a specified time period (in milliseconds). This ensures that only one DOS application at a time receives timer interrupts. To adjust the TimerCriticalSection entry 1 Find the [386enh] section of the SYSTEM.INI file. 2 Specify TimerCriticalSection=milliseconds in this section. For example, to specify a 10,000 millisecond timeout period, type the following: TimerCriticalSection=10000 3 Save the SYSTEM.INI file and restart Windows. Note: Using the TimerCriticalSection entry may slow down Windows. RESOURCES: NetWare and Microsoft Windows Integration: Novell Appnotes January, 1991. WINTOOLS: Available on Netwire as WINUP4.ZIP. Allows you to do the following from one application or group: * Map network drives * Select network printers * Attach to or detach from file servers * List network users * View volume information * Set or change passwords * Send messages to network users and groups * Block or allow messages from other users * Customize your mappings and printer information for specific tasks Network Application Installer (NAI): an inexpensive way ($50/server) to automate the installation and upgrading of Windows applications on the network. Windows apps are installed, removed, or updated from the user workstation with a simple mouse click. Contact Aleph Systems, 7319 Willow Avenue, Takoma Park, MD 20912, 202-233-7865. Windows Magazine: call 800-284-3584 The Windows Resource Kit for the Microsoft Windows Operating Environment Version 3.1 contains additional information about setting up and configuring Windows for use with a network, and information for system administrators. This kit provides complete technical information about Windows version 3.1 for the support professional. It includes a technical reference manual, and a disk containing helpful utilities, system resource viewers, drivers, and accessories. To order, call 1-800-642-7676 Microsoft Product Support Services: You can reach Microsoft Product Support Services between 6:00 A.M. and 6:00 P.M. Pacific time, Monday through Friday. For assistance with Microsoft Windows, dial (206) 637-7098. You can also hear recorded responses to common Microsoft Windows questions, and order application notes via FAX. This automated service is always available and requires a touch-tone telephone. For assistance with Microsoft Windows, dial (206) 635-7245. Microsoft Forums on CompuServe: for an introductory CompuServe membership kit specifically for Microsoft users, dial 1-800-848-8199 and ask for operator 230. If you are already a CompuServe member, type GO MICROSOFT at any ! prompt. Authorized Training Centers: offer several services for Microsoft product users. These include: * Customized training for end users and trainers * Training material development * Consulting services For information about the training center nearest you, call Microsoft End-User Sales and Service at 1-800-426-9400. Consultant Referral Service: Microsofts Consultant Relations Program can refer you to an expert independent consultant in your area. These consultants are skilled in the areas of custom application development, systems integration, and in migrating to Microsoft Windows. For information about consultants in your area, call our Microsoft Referral Specialist at 1-800-227-4679, extension 56042. * Portions of this document was excerpted from the Microsoft 3.1 documentation.