ษออออออออออออออออออออออออออออออออออออออออออออออออออออออออออออ
บ UNIMAINT
บ Version 5.00.61
บ CSD Level 1998133
บ
บ
บ SofTouch Systems, Inc.
บ 1300 S. Meridan, Suite 600
บ Oklahoma City, OK 73108
บ Phone:(405) 947-8085  Fax:(405) 947-8169
บ
ศออออออออออออออออออออออออออออออออออออออออออออออออออออออออออออ

*******************APPLYING THE  Y5098133.CSD*****************************

************************************************************************
Running The ACSTEST.EXE

Before applying the CSD, the ACSTEST.EXE program must to be run with the -Z
option. To do this open up an OS2 window and change directories to the
Unimaint Directory. Enter the command:        ACSTEST -Z
This deregisters the class created by the ACSAGENT.DLL and *MUST* be done
*BEFORE* the CSD can be applied.

*************************************************************************
To apply the CSD, open an OS2 window and change directories to the Uminaint directory
and enter:  GTINST X:\Y5098133.CSD
where x is the path and directory that the CSD was unzipped to.


*NOTE*
When installing the CSD, if you get an error "Base Level Invalid" then you need to
reinstall the base product before applying the CSD.


******************************* V5.00.41 *********************************

The items fixed in Version 5.00.41 are:

1. If a timeout occurred waiting for a WPS method to complete it was not 
logged to the diagnostic file even if diagnostics were enabled. Code has been 
added to be sure this event is logged.

2. The code that creates the Portable Backup did not disable hard DOS errors 
and could therefore get hung up on something like a drive that was not ready. 
Code has been added to be sure that these popup messages are disabled during 
the Portable Backup.

******************************* V5.00.42 *********************************

The items fixed in Version 5.00.42 are:

1. It is possible for one or more of the Portable Backup files to have the 
read only attribute left on if there is a problem with the backup. This will 
cause future attempts to run the Portable Backup to fail with Logic Error 
1705 because these files cannot be renamed. Code has been added to remove the 
read only attribute from these files before the rename is attempted.

2. The dump of the Find Structures did not identify which Find the various 
entries were used for so the name of each structure has been added.

3. There was no logging during the startup activities for the Repair Execute 
so it was not possible to determine where an error was occurring when 
something went wrong in this area. Additional logging lines have been added 
to record the various startup activities.

******************************* V5.00.43 *********************************

The items fixed in Version 5.00.43 are:

1. There was one place where it was possible, although extrememly unlikely, 
that an attempt would be made to open the Repair Logging file when the name 
of the file had not been filled in.

2. Code was added to the routine that logs lines to a logging file that will 
allow this routine to also display a message box for each line. This is 
activated by passing UniMaint a commnad line parameter of /#.

******************************* V5.00.44 *********************************

The items fixed in Version 5.00.44 are:

1. Code was added to allow the WPS diagnostic mode to be activated via the 
passed parameter line using /( followed by the full filename without the 
extension. The code adds DIA and AGT as the two extensions.

2. Code was added to allow the Repair routines to report the hard errors that 
are normally bypassed. This is designed to help diagnose problems that do 
things such as clobber the Repair Logging file.

******************************* V5.00.45 *********************************

The items fixed in Version 5.00.45 are:

1. Code has been added to the Repair Options to allow the user to force 
specific drive letters to Network, CD-Rom, Virtual or Removable drives so 
that they will be treated as this type of drive by the Repair even if the 
drive is not in use or not ready.

2. In order to get past certain problems with OS/2 API's which will not work 
correctly under specific conditions a new Repair, Delete Ignored File 
Handles, has been added to allow the user to delete bad File Handles without 
having the problem API's called against the problem drives, directories and 
files.

3. The help for the individual Repair entries would always display the 
general Repair Help instead of the Help for the specific Repair. The code has 
been modified so the Help for the specific Repair will be displayed when that 
is the selected Repair and the drop down list has the focus.

4. The Desktop and Portable Backup and Restore for Warp 4 has been modified 
so that it will run without having the WarpCenter installed. Previously this 
condition would cause a logic error 1773.This fix had to be applied to 
UniMaint, UniCheck and UniWatch because UniCheck and UniWatch insure that the 
WarpCenter files are usable.

5. If the name of the DLL that supports the WarpCenter had lower case letters 
in it then the DLL would not be found because the name was being compared 
with an all upper case name. This would cause a logic error 1773 in previous 
versions and would have caused this version to bypass the WarpCenter. Code 
has been added to insure that both the source and target strings are upper 
case then the compare is made. This fix had to be applied to both UniMaint 
and UniWatch.

******************************* V5.00.46 *********************************

The items fixed in Version 5.00.46 are:

1. Code was added to AcsTest to record and report the OS/2 Version.

2. Added Acs_SOMFree call to AccssWPS so that certain things can be freed.

3. Code was added to allow the WPS Agent to return it's WPS Class and Object 
Pointer.

4. AcsTest and AcsMaint were modified so that the first calll to a WPS method 
would be done against the WPS Agent Object and be a very simply method in 
order to establish that the basic WPS stuff is working.

******************************* V5.00.47 *********************************

The items fixed in Version 5.00.47 are:

1. AcsTest was modified in a minor way to make it more like AcsMaint in order 
to diagnose a very unusual WPS/SOM problem that one user is having.

******************************* V5.00.48 *********************************

The items fixed in Version 5.00.48 are:

1. Additional code was added to the exception processing routines to list all 
of the loaded modules when an exception occurs.

2. Some logging was added to the routine that finds the Desktop.

3. The routine that finds the Desktop was modified so that it will remember 
the Desktop once it finds it so the search will not be done twice and code 
was added to look for and use the SET DESKTOP= entry in the CONFIG.SYS file 
if it is there.

4. The startup of the WPS Agent in AcsTest was changed to use a restart 
setting of ON rather than OFF.

******************************* V5.00.49 *********************************

The items fixed in Version 5.00.49 are:

1. The code that starts the WPS Agent Object was modified to make an 
immediate test to be sure that basic WPS things can be done. This was done in 
response to a problem where an attempt to get the WPObject somID would fail. 
Since AcsTest was working the extra things that AcsTest did at startup were 
duplicated in UniMaint.

******************************* V5.00.50 *********************************

The items fixed in Version 5.00.50 are:

1. A minor change was added to the Repair code to make the handling of 
MMShadow and SCShadow objects a little faster.

2. Code was added to AcsTest to allow it to test the OS/2 API's for finding 
files using the PATH, DPATH and LIBPATH.

******************************* V5.00.51 *********************************

The items fixed in Version 5.00.51 are:

1. The code to check for the EXE and startup directories in the Repair 
Objects routines did not first check to see if the drive for the EXE or 
directory was set to be ignored or report only. This caused some API's to be 
called against drives that caused the same problem described in 1. for 
V5.00.45.

******************************* V5.00.52 *********************************

The items fixed in Version 5.00.52 are:

1. The diagnostic message created when the WPS class deregistration failed 
did not include the PM error so it has been updated.

2. It was possible to get into a loop if inconsistent information was 
returned from some OS/2 API's in the WPS Agent Object common code so 
additional checks were added to insure that this does not happen.

3. The version was added to the UniWatch initialization logging message.

4. The logging in the UniWatch routines that check to see if the daily 
triggers have been exceeded has been upgraded.

******************************* V5.00.53 *********************************

The items fixed in Version 5.00.53 are:

1. Code has been added to display the individual items the Repair is working 
on as it fills the tables.

2. Code was added to display the identity of each of the Repair items as it 
is examined to be placed in the various tables.

3. It was possible that UniWatch would not do the daily hour check once the 
user got past the end of a year. This has been fixed by adding a check for 
end of year conditions.

4. AcsTest was changed back to using restart of NO because YES caused a 
problem when the AcsAgent Class was not registered at all.

5. Code was added to AcsTest to allow the initial restart to be set to NO.

6. AcsTest was changed so that if the initial attempt to create the Object 
failed it would be tried again with restart set to the opposite setting.

************************* V5.00.54 - 1 Oct 97 ***************************

The items fixed in Version 5.00.54 are:

1. A number of the Selected Object Settings Set menu items would fail with a 
SYS3175 if a display had not been done before the Set item because an attempt 
would be made to modify an area of constant storage. This problem had been 
fixed for the Display menu items but was not fixed for the Set menu items. 
The Display fix has now been implmented in the Set routines as well.

************************* V5.00.55 - 29 Oct 97 ***************************

The items fixed in Version 5.00.55 are:

1. Additional logging code was added to the routine that tests whether a 
specific object responds to a specific method. Since the expected result is 
that the object does respond any results where the object does not respond 
will be logged.

2. Additional tests have been added to insure that objects respond to 
specific methods even some of the methods for the WPObject class.

************************* V5.00.56 - 4 Nov 97 ***************************

The items fixed in Version 5.00.56 are:

1. Code was added to support the ">" parameter which allows the user to 
specify a method and, optionally, as many object titles as needed that should 
bypass the method.

************************* V5.00.57 - 4 Nov 97 ***************************

The items fixed in Version 5.00.57 are:

1. When doing an Uninstall and a WPS Object that was associated with a file 
to be deleted could not be deleted a logic error 1926 would occur. However, 
this should be handled that same way that a problem deleting the file is 
handled ie., the user is informed and the Uninstall continues. Code has been 
added to do this.

************************* V5.00.58 - 12 Jan 98 ***************************

The items fixed in Version 5.00.58 are:

1. The Explain did not correctly explain the PM_SystemFonts entry in the 
OS2.INI file and has been corrected.

2. There was a place in the Repair where an 1108 logic error could happen 
while repairing the wps stuff. An additional check has been added so this 
will no longer happen.

************************* V5.00.59 - 25 Apr 98 ****************************

The items fixed in Version 5.00.59 are:

1. If the Repair was using test files in place of the normal System and User 
INI files then the files would not get closed even if they were changed. 

2. If the PM API that is supposed to find file based WPS objects does not 
find an object but the Portable Restore does find it and the Object is the 
parent folder for an Object being restored the restore will fail. In theory 
this should never happen but it does. Since the folder can be found an extra 
check was added for just this situation so that the folder and the objects in 
the folder will get restored.

************************* V5.00.60 - 26 Apr 98 ****************************

The items fixed in Version 5.00.60 are:

1. It was possible for the Repair File Handles code to attempt to write an 
entry into the OS2SYS.INI file that was exactly 64k bytes. This will cause an 
error because of how the length is kept. The code has been modified so that 
the maximum size that any of the code will attempt to write is 64k - 1.

************************* V5.00.61 - 11 May 98 ****************************

The items fixed in Version 5.00.61 are:

1. When UniWatch logging was turned on it still did not log the difference 
counts that it found at the end of each check cycle so one of the logging 
lines was moved so that this information will become a part of the normal 
logging rather than just logged when a problem has occurred.

2. The Find had a bug where it would get a not found if the key name that was 
found at one point in the search was a name that was a sub string of another 
earlier key name because the search included a parameter that said that 
substrings were okay. The substring parameter has been removed so this will 
no longer happen.



