home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / World_Of_Computer_Software-02-387-Vol-3of3.iso / i / instctrl.zip / INCTRL.DOC next >
Text File  |  1992-06-22  |  11KB  |  212 lines

  1. INCTRL.EXE (Version 1.0)
  2. ------------------------------------------------------------------------
  3. Neil Rubenking                                     July 1992 (Utilities)
  4. ------------------------------------------------------------------------
  5.  
  6. INCTRL: 
  7.  
  8.        INCTRL.EXE is an Installation Control program for Windows. It
  9. supervises an application's install utility and writes a report file
  10. of changes made to your system.
  11.  
  12. USING INCTRL
  13.  
  14.      After copying INCTRL.EXE onto your hard disk, you can load it from
  15. the Program Manager, as usual.  Note that the program requires Protected
  16. mode (Windows Standard or Enhanced modes) to operate.
  17.  
  18.      It takes hardly any more effort to install a new Windows application
  19. under INCTRL's supervision than to go through the usual File,Run dialog
  20. under Program Manager.  After bringing up INCTRL, you press one button
  21. to select the install program and press a second to choose a file name
  22. for the output report. Although this documentation discusses INCTRL using
  23. a Windows 3.1 common dialog box for file selection, INCTRL does not require
  24. the COMMDLG Dynamic Link Library. If you don't have COMMDLG.DLL on your
  25. system, INCTRL will simply use a different file selection dialog box.
  26.  
  27.      When you've selected both the install program to be run and a name
  28. for INCTRL's output report, the grayed-out Perform Install button will
  29. be enabled. Press it and INCTRL will take over the installation.
  30.  
  31.      There will be an initial delay as INCTRL memorizes the file layout
  32. of the fixed disks on your system. During this interval a small window
  33. will appear to let you know what's happening.  INCTRL also makes copies
  34. of WIN.INI and SYSTEM.INI at this time, using the names WININI.$$$ and
  35. SYSINI.$$$. After these preparations, INCTRL executes the application's
  36. install program, whose instructions you follow to complete the installation.
  37.  
  38.       After the installation is finished, INCTRL writes a header (which
  39. includes the install file name and the current date and time) for its
  40. output report. It then scans your fixed disks again, checking each file
  41. and directory against the disk contents it memorized earlier. For items
  42. already present on its list, INCTRL compares the current size and date/time
  43. stamp with their previous values. If the stamps are different, INCTRL
  44. marks the file as changed; if not, it removes the file from the list.
  45. Any file not present on the list was obviously added during the
  46. installation, so INCTRL writes its name to the output report.
  47.  
  48.      When this second scan of files and directories is complete, the
  49. only files left from INCTRL's original list will be those that were
  50. changed during the installation or those that were deleted. INCTRL first
  51. flips through the list and reports the name of every item that was marked
  52. as having been changed by the install program. Since every file that
  53. exists on disk was either removed from the list or marked as changed,
  54. any remaining files not marked as changed must have been deleted by
  55. the install program. INCTRL reports these as well, even though it's
  56. unusual for an install program to erase files.
  57.  
  58.      Next, INCTRL compares the saved copy of WIN.INI with the current
  59. WIN.INI. It compiles a list of all the section headings from the old
  60. file and checks it against the section headings from the new file.
  61. If any were added during the installation, it writes their names to the
  62. output report and adds them to the list. INCTRL doesn't report on sections
  63. deleted from WIN.INI. It follows the same procedure in examining
  64. SYSTEM.INI. For each section in the .INI file, INCTRL gets a list of
  65. all the keys (for example, Load) contained in that section of the old
  66. file and reports on any keys that were added in the new file.  Then it
  67. checks the value of each key from the old file against the value of
  68. that key in the new file. If they differ, it writes both the old value
  69. and the new to the output file.
  70.  
  71.      INCTRL will notify you if it finds a duplicate section name or a
  72. duplicate key within a section of an INI file. Normally, the Windows
  73. functions that create the keys don't allow creation of duplicate key
  74. names. A particular exception occurs in the [386Enh] section of
  75. SYSTEM.INI, however, which can have any number of lines with the key
  76. DEVICE. Windows accesses these lines during initialization, without
  77. going through the normal INI-handling functions. INCTRL also treats
  78. this key specially: It simply counts the number of times it occurs in
  79. the old and in the new files and reports if the new file has more
  80. DEVICE lines.
  81.  
  82.      The Figure below shows an abbreviated version of a sample INCTRL
  83. report, which was generated while installing the After Dark screen saver.
  84. That application's install program copied 81 files and 5 directories
  85. to the disk, added a DEVICE= line to SYSTEM.INI, and added the programs
  86. AD.EXE and ADINIT.EXE to the LOAD= line in WIN.INI. There are 8 files
  87. listed as changed, though some of these were left over from an earlier
  88. installation of the program.
  89.  
  90. CONFIGURING INCTRL
  91.  
  92.       By default, INCTRL scans all fixed disks on your system looking
  93. for file and directory changes. If you have one or more disk partitions
  94. that are never used for Windows applications, you can speed INCTRL's
  95. search and reduce its memory requirements by excluding those drives from
  96. examination. To do so, create the ASCII file INCTRL.INI in your Windows
  97. directory with a single section called [Excluded drives]. For each drive
  98. you want to exclude, add a key line such as c=1 to that section. For
  99. example, to exclude drives C: and D:, add the following:
  100.  
  101.                               [Excluded drives]
  102.                               ac=1
  103.                               d=1
  104.  
  105.      Your Windows directory is the default storage location for INCTRL
  106. report files. To make another directory the default, add a [Directories]
  107. section to INCTRL.INI and assign that directory to the ReptDir key, as,
  108. for example:
  109.  
  110.                               [Directories]
  111.                               ReptDir=E:\INCTRL
  112.  
  113. UNINSTALLING WITH INCTRL
  114.  
  115.      Although INCTRL gives you the information you need to uninstall a
  116. program, you must still make intelligent rather than blind use of this
  117. information. Your first step is to delete the program's icon from the
  118. Program Manager group that contains it. If the program has a group all
  119. its own, you can delete the whole group.
  120.  
  121.      Now load the INCTRL report for the application to be removed into
  122. your editor of choice. Look first for entire directories added during
  123. its installation:  you can usually trash these entirely. You should at
  124. least consider the possibility, however, that you may have created data
  125. files in a program-created directory that you're considering deleting.
  126. If you're not sure, try individually deleting the files INCTRL reports
  127. in that directory and examine any that are left over with your favorite
  128. file management program.
  129.  
  130.      You can obviously delete a private INI file if the program installed
  131. one, but most files added to the Windows and the System directories are
  132. intended to be shared with other programs. Thus, it may not be safe to
  133. delete DLL, DRV, FON or EXE files that were installed in either of these
  134. directories. If you want to be sure, rename rather than delete these
  135. possibly-shared files and then restart Windows. Bring up each program
  136. you installed after the program being removed and make sure it doesn't
  137. depend on the renamed files. If this test succeeds, you can delete the
  138. renamed files. If one of your programs refuses to run without a
  139. particular renamed file, rename it back and add that filename to the
  140. INCTRL report for the dependent program.
  141.  
  142.      INCTRL's list of changed files is provided for your information;
  143. most of the time you won't want to delete any of these, for the
  144. installation program either updated them or simply re-copied them on
  145. your disk. Either way, they were there before the installation and should
  146. probably stay after you uninstall the program.
  147.  
  148.      If changes were made to WIN.INI or SYSTEM.INI, bring up the affected
  149. INI file in your favorite ASCII editor. A new section is much like a new
  150. directory--you can probably erase the whole thing. If one or more EXE
  151. files were added to the LOAD= or RUN= lines in the [windows] section of
  152. WIN.INI, remove them. Don't simply restore the "before" value of the
  153. line unless you're sure that other programs have not subsequently been
  154. added to these lines. On the other hand, some programs are associated
  155. with a particular file extension in the [extensions] section. Once the
  156. program is gone, you'll probably  want to delete the WIN.INI line for
  157. that association.
  158.  
  159.      Other INI file changes must be considered on a case-by-case basis.
  160. If you're not sure whether it's safe to delete a line, turn it into a
  161. comment by putting a semicolon at the beginning of the line. Then restart
  162. Windows and run each program that was installed after the program being
  163. removed. If they all work, you can either delete the now-comment lines
  164. or leave them in place as comments. In case you find that one of your
  165. other programs does depend on a particular INI file line, remove the
  166. initial semicolon and add the line to the INCTRL report file for that
  167. program.
  168.  
  169. Neil J. Rubenking is technical editor of PC Magazine.
  170.  
  171. ----------------------------------------------------------------------
  172. Figure: This is an abbreviated version of the report INCTRL produced
  173. after installing the After Dark screen saver.
  174. ----------------------------------------------------------------------
  175.  
  176. An INCTRL Report
  177. INSTALLATION REPORT - B:\INSTALL.EXE
  178.  
  179. Produced by INCTRL, Copyright (c) 1992 by Neil J. Rubenking
  180. Wed 4/1/1992 09:20:29.06
  181.  
  182. *** FILES AND DIRECTORIES ADDED ***
  183. DIR : E:\AFTERDRK
  184. FILE: E:\WINDOWS\AFTERDAR.GRP
  185. FILE: E:\AFTERDRK\AD_LIB.DLL
  186. FILE: E:\AFTERDRK\ADINIT.EXE
  187. FILE: E:\AFTERDRK\AD.EXE
  188. . . .
  189. FILE: E:\AFTERDRK\ADMODULE.SDK\BLANKER\MNAME.RSC
  190. Install program added 81 files and 5 directories.
  191.  
  192. *** FILES AND DIRECTORIES CHANGED ***
  193. FILE: E:\WINDOWS\AD.CFG
  194. FILE: E:\WINDOWS\ADMODULE.ADS
  195. FILE: E:\WINDOWS\AD_PREFS.INI
  196. FILE: E:\WINDOWS\PROGMAN.INI
  197. FILE: E:\WINDOWS\SYSTEM.ADK
  198. FILE: E:\WINDOWS\SYSTEM.INI
  199. FILE: E:\WINDOWS\WIN.INI
  200. FILE: E:\WINDOWS\WININI.ADK
  201. Install program changed 8 files and 0 directories.
  202.  
  203. *** KEYS CHANGED IN WIN.INI SECTION [windows] ***
  204. BEFORE: load=
  205.  AFTER: load=e:\afterdrk\ad.exe e:\afterdrk\adinit.exe
  206. 1 keys changed in WIN.INI section [windows]
  207.  
  208. *** KEYS ADDED TO SYSTEM.INI SECTION [386Enh] ***
  209. 1 DEVICE= lines added to the [386Enh] section of SYSTEM.INI
  210. 1 keys added to SYSTEM.INI section [386Enh]
  211. ----------------------------------------------------------------------
  212.