INIMAINT CHANGE HISTORY ******************************* V1.0a ******************************* The items fixed in Version 1.0a are: 1. There was a potential problem in 1.0 if a new file was selected before the data for a key was written to the file. This turned out to not be a problem. 2. If INIMAINT was closed in a minimized condition, the correct window size and location were not stored. This has been fixed. 3. The SIZE calculation for All Groups was incorrect if a single Application was included in more than one Group. This has been fixed. 4. If the Help Instance could not be created because the INIHELP.HLP file was not found, the user only got a 5101 logic error. The Dump Dialog has been changed to add a line that gives the reason for any outstanding logic error. 5. The PM Error Text was not displayed when there was a PM Error. OS/2 1.3 with CSD WR5050 has a bug in this area and will not display the correct text. The text will now be displayed. 6. When an error was encountered during Help Instance Initialization, the help error code was not stored in the Help Error area. This has now been fixed. 7. INIMAINT would not run at all if there was a problem initializing the Help. It will now run, but no Help will be available. ******************************* V1.0b ******************************* The items fixed in Version 1.0b are: 1. More of the Help has been done, the missing Help is now that for the Dialog Boxes. 2. When run under OS/2 2.0 a Message Queue Full error was being encountered. This was fixed by increasing the Message Queue from the default 10 to 30. ******************************* V1.0c ******************************* The items fixed in Version 1.0c are: 1. A Dump message logging facility was added so that problems with message sequences could be logged and identified. 2. Because of a problem in OS/2 2.0 the return from setting the top index in a listbox is incorrect. The check for a valid return from this API call has been removed so that INIMAINT will run under OS/2 2.0. ******************************* V1.0d ******************************* The items fixed in Version 1.0d are: 1. When INIMAINT first comes up, the LOGO box does not have the Focus and the Enter Key will not close it, it can only be closed using the Mouse. The Focus is not forced to the LOGO Dialog during initial window processing. 2. The Dump Dialog will not fit on a 640x480 VGA Screen. To fix this the Dump dialog was made 20 pels shorter. 3. The filling of the Listboxes, the MLE and the Size calculation all have the capability to run for some time, especially under OS/2 2.0, and they block any processing of messages during this period. These functions have been moved to a separate thread. 4. Choosing Menu Items such as Size, Copy and Move cause a Dialog box to appear with the selections. The Selections are now a menu, not a dialog. 5. If there is a lot of data to be inserted into the MLE, the MLE blinks a lot. The window is now be disabled during the data insertion. 6. If Size is selected and then Cancelled, a Size of 20 bytes was displayed. This has been fixed. 7. The buttons in the New File Dialog were in uppercase, but now are lower case. 8. If a New File is selected on a diskette drive that has no diskette, a terminal error resulted. Now a Message Box will be presented and the old drive will remain the current drive. 9. Selecting an empty VDISK drive got a terminal error. This has been fixed. 10. You could not Cancel a Copy without selecting a target file. This has been fixed. 11. When the contents of the Dump Dialog were written to a file, the values of the various error indicators, which are displayed at the top of the Dialog, were not written. This has been fixed. 12. If a non-INI file is selected and it causes INIMAINT to terminate, then the program would not restart, because it attempted to use the same file and continued to get the same error. The user is now informed the file is invalid and given a chance to select a new file to edit. 13. When opening a new INI file to edit, the check for a valid INI file was not sufficient to identify the bad file during the file selection process. This has not been fixed and any file that gets through the file selection will be a valid INI file. 14. If a Drive was selected and the root directory was empty, INIMAINT would terminate attempting to fill the file Listbox. This has now been fixed. 15. When editing the any line of a multiline entry in the Key Value MLE while in overtype mode, as opposed to insert mode, the following line had the initial characters deleted. This has been fixed. 16. When the Focus was removed from the INIMAINT window, the Titlebars of both Listboxes stayed in a highlighted condition. This has been fixed and the colors of the Titlebars will now behave correctly. 17. Since no user input is accepted while the Listboxes are being filled, the MLE is being reset, a Size is being calculated or a Move or Copy are in progress, the Pointer should be changed to an hourglass pointer, this was not working, but has been fixed. 18. The Help has been finished. 19. There was a problem with seeing the pointer in the MLE under OS/2 2.0, so a call to WinSetOwner setting the Main Client window as the Owner of the MLE was added to fix the problem. ******************************* V1.0e ******************************* The items fixed in Version 1.0e are: 1. Copy an Entire File got a return of 10 from the Copy program. This has been fixed. 2. The MOVE/COPY in Progress Dialog did not display the word Move/Copy. This has been fixed. 3. The MOVE/COPY did not verify that the target file was a valid INI file. This will now be done and an Error Message box will be displayed if the COPY/MOVE cannot be done. 4. The smallest item that could be MOVEed or COPYed was an Application. It is now possible to COPY/MOVE an individual key. 5. Considerably more Help has been added. 6. Accelerator Keys have been implemented and added to the Help. 7. If a New File was selected and either the OS2.INI or OS2SYS.INI files were specified without the initial path information, INIMAINT did not recognize them as the User and System INI files and attempted to open them in an incorrect manner. This has been fixed. 8. If a COPY/MOVE was attempted and either the OS2.INI or OS2SYS.INI files were specified as the target without the initial path information, INIMAINT did not recognize them as the User and System INI files and attempted to open them in an incorrect manner. This has been fixed. 9. If an INI file was selected that had no Applications in it, the INIMAINT window would not appear. This has been fixed. 10. It was not possible to cancel the Add Application or Add Key without getting the Message Box saying that something had to be entered. The Cancel will now work correctly. 11. The Listboxes and MLE would flash excessively. This will no longer occur. 12. When in the Dump Dialog, it was not possible to change the name of the Dump File by simply typing in the Filename Entry Field. This will now work and the new filename will become the Dump File for future Dumps. 13. When the Help was open, the Title Bars of the smaller INIMAINT windows appeared to still have the focus because they were highlighted. This will no longer occur. 14. When in the Replace Key Dialog and the key value was longer than what could be displayed in the Listbox, any change to the value would cause the contents of the ASCII and Hex Entry Fields would shift to the very end of the value data. This has been fixed. 15. INIMAINT was not using the Logo Display Time that is set by the user in the Control Panel, but was using an internal 10 second display time. This has been changed so that the Control Panel value will now be used. Even with a value specified in the Control Panel, it is still possible to turn off the Initial Logo Display with the Options Dialog. ******************************* V1.0f ******************************* The items fixed in Version 1.0f are: 1. The Menus did not show the Accelerator Keys, this information has been added to the appropriate menu items. 2. Because of a bug in handling Timers, INIMAINT would get an error when run under OS/2 2.0 and the About Dialog was dismissed. This has been fixed by changing the Parent of the About box when it is invoked from the Menu. 3. The Help indicated that there was an Accelerator key that would directly pull down the COPY or MOVE menus. This was an error and has been removed from the Help file. 4. When a COPY/MOVE was attempted for the Selected Application or Selected Key and either of the Selected Names had an embedded blank, then the COPY?MOVE would terminate with an Error=5 from the INICOPY program. This has been fixed. 5. The Error Message Box displayed when an invalid INI file was selected did not include the error message, this has been fixed. 6. When an invalid INI file was selected, INIMAINT would not close the file, therefore, no other process could use the file. This has been fixed. ******************************* V1.0g ******************************* The items fixed in Version 1.0g are: 1. The Dump to a file could get a Trap D and could dump some garbage messages because it was going past the end of the Message table. This has been fixed. 2. A message sequence number has been added to the dump of messages. 3. When doing a MOVE/COPY the Wait Pointer was not set correctly when the pointer was over the Listboxes or MLE. This has been fixed. 4. If a Group was deleted, a hole was left in the menu items that include the Groups. This has been fixed. 5. When things were MOVEd from an INI file to another file, the Listboxes were not updated to reflect the fact that the MOVEd items were no longer in the Source INI file. This has been fixed and the Listboxes will be automatically updated after the MOVE. 6. The supplemental error text was not always complete if an error occurred during a MOVE/COPY operation. This has been fixed. 7. V1.0f displayed a Version number of 1.0e. V1.0g will show the correct version. 8. When the last Key for an Application was moved to another INI file, the Application entry was not deleted and an Application with no Keys was left in the file. INIMAINT will now check to see if a MOVE Key is being done for the last Key and promote it to a MOVE Application, so that the Application entry will be removed from the Source INI file. 9. The Groups Dialog did not redisplay the Group that was being displayed when the last Group Update was done. This has been fixed. ******************************* V1.1 ******************************* The items fixed in Version 1.1 are: 1. The System Default Accelerator keys did not work because the System Commands were not getting to the Main Window Frame. This has been fixed. 2. The Registration code was added. 3. When an input string was requested, the user was asked to 'Select' something. This has been changed to ask the user to 'Enter' the information. ******************************* V1.1a ******************************* The items fixed in Version 1.1a are: 1. The supplemental error text was not correctly filled in when there was an error during a COPY/MOVE. This has been fixed. 2. It was possible to get a Trap D when selecting a New INI File because dynamic memory was released prematurely. This has been fixed. ******************************* V1.1b ******************************* The items fixed in Version 1.1b are: 1. It was possible to get a Trap D while the MLE was formatting a long entry if an attempt was made to make a selection in one of the Listboxes or an attempt was made to change the MLE. Now any such attempt will cause an error tone and the action will be rejected until all updaing has been done. 2. There were some relatively rare situations where dynamic memory blocks were not being freed, theu that amount of memory used would slowly grow. This has been fixed. 3. In order to better track potential memory problems, a dump of the contents of the heap has been added to the Dump window and and more complete listing will be written to the Dump File. 4. Under certain circumstances, INIMAINT would put Keys in the OS2.INI file for the INI File Maintenance Application that had NULL Values. This will no longer occur, although it did not cause any problem other than put unneeded items in the INI file. 5. There are certain Applications and/or Keys that cannot be deleted from the OS2SYS.INI file. When an attempt was made to Delete or MOVE one of these entries, INIMAINT would terminate. Additional code has been inserted that will identify these conditions, inform the user and then continue. 6. Under OS/2 2.0 INIMAINT would terminate with an error 109 after the About INIMAINT Dialog box was displayed. This was caused by static variables that were not correctly initialized after the first use of the dialog. This has been fixed. 7. The Spooler, and perhaps other sections of OS/2 protect certain areas of the INI files, especially the System INI file, thus making it impossible to remove certain Keys from the files, even though the Keys are associated with things that are no longer on the Desktop. In order to facilitate these efforts, a new capability has been added to INIMAINT that allows the user to change the User and/or System INI files to a different file. The user can then edit the original file as he wishes and then switch back. This must be done with much care in order to avoid causing a system problem, but the capability can be extremely important when attempting to recover from conditions where the operating system has created conflicting or other conditions that can be corrected no other way. ******************************* V1.1c ******************************* The items fixed in Version 1.1c are: 1. The Main Window Menu Items for changing the User and System INI files have been moved from the Actions Menu to a new Menu, Recover. It is intended that additional capabilities will be added to give the user the ability to recover from corrupted INI files and those capabilities will be added to this menu. In addition, the Actions Menu was getting crowded. 2. Two new items have been added to the Action Menu. Rename Key will change the name of an existing Key and Duplicate Key will make a duplicate copy of a Key Value using a different Key Name. ******************************* V1.1d ******************************* The items fixed in Version 1.1d are: 1. The New File and Exit Menus have been combined into a single Menu called File. This was done for two reasons, first, the number of menu items was becoming too large and, second, a new file type function was added, see below. 2. Since there are a number of different conditions that could modify an INI file that is currently being viewed using INIMAINT, the ability to reload an INI file from disk has been added. It is the Refresh selection on the File Menu. 3. There was an error in Error Message 13 in the INICOPY program. 4. It was not possible to select a Application/Key pair when the Key Value was zero length ie., there was no Value, only the Application and Key Names. This has been fixed. 5. It was not possible to COPY/MOVE and INI file that had an Application/Key pair with a zero length Key Value. This has been fixed. 6. When Adding or Replacing a Key Value, the ability to specify that a zero termination character is to be added to the Key Value can now be indicated with a Checkbox. 7. The most common files that INIMAINT is asked to display are the User and System INI files. In order to make it easy to select these files, two new entries have been added to the File Menu that allow for direct selection of these two files without having to use the file selection dialog. 8. Some of the dialog procedures did not initialize static data causing a new use of the same dialog to behave in unexpected ways. This has been fixed. 9. A new item has been added to the Options that gives users the ability to have the Application and Key Listboxes loaded in the same sequence as the actual INI file as opposed to alpha sequence. ******************************* V1.1e ******************************* The items fixed in Version 1.1e are: 1. When the menu item was used to switch to the User or System INI files, the new file information was not saved. The effect of this was that the next time INIMAINT was run, it would go back to the previous INI file. This has been fixed. 2. INIMAINT can now be started with a Command Line parameter specifying the initial INI file for this execution of INIMAINT. This not only allows INIMAINT to be run with a parameter, but also allows for it to be run by double clicking on an INI file, if the association has been set up, and allows for running INIMAINT by dropping an INI file on the ICON on the Desktop. 3. For versions of OS/2 prior to 2.0, there is no provision for setting up file associations. Therefore a new item has been added to the FILE Menu that will set up an association between INIMAINT and all files whose file extensions are INI. This option will not appear on the menu if the version is 2.0 or higher. 4. There are some key values which are very long, therefore, they take a long time to load into the MLE. It is often the case that the user does not even want to see the key value and would prefer to switch to another key name. However, it was necessary to wait until the MLE was filled and then wait again until all of the lines were removed from the MLE. It is now possible to terminate the loading of the key value lines into the MLE by hitting the ESC key while the MLE is loading. The current Application and Key names will still be highlighted, but the MLE will be empty. 5. In order to keep the menu line from becoming too crowded, the Dump menu item has been moved to the File submenu. This was an item that is not frequently used anyway. This makes room for the item below. 6. A new menu item has been added to the main menu, Find. This submenu will allow searching of either of the listboxes, the key value MLE, all the key names in the current file, all of the key values for the current application or all of the key values in the current file for either an Ascii or Hex value. 7. It was possible to select a new item in the Application or Key Listboxes while the boxes were being filled. This would cause a Protection Violation and has now been fixed. 8. When certain errors were encountered during the loading of the Listboxes or the MLE, they were not reported, this has been fixed. 9. If the Value of a Key is larger than 65,500 characters, selecting that Key in the Key Listbox would cause a memory allocation error and the INI file with the Key Value could not be MOVEd, COPYed or used as the target of a FIND search. All of these have been fixed. However, only the first 60,000 characters of the Key Value will be displayed in the Key Value MLE. 10. If INIMAINT was started with an INI file where the first Key Value of the first Application was very large, it was not possible to terminate the loading of the Key Value MLE because the main window was not visible. This has been fixed by making the main window visible before the intial loading of the Key Value MLE. 11. A new feature, Compare, has been added to the File menu. This item will allow the user to compare two INI files on any one of three different levels, write or print a listing of the differences and write an INI file that contains only those Applications and/or Keys where there are differences. ******************************* V1.1f ******************************* The items fixed in Version 1.1f are: 1. When an attempt to set an association with the INI files was attempted under OS/2 1.3, the association was set up, but INIMAINT would then abend with a protection exception. This has been fixed. 2. When INIMAINT asked the user to enter any character string variable, there was no warning when the entered string was too long. This has been fixed and the user will hear a beep if they attempt to enter a string that exceeds the maximum length for the requested item. 3. It was possible to enter a Group Name that was longer than 30 characters, which is the maximum. This would appear to work correctly, but subsequent attempts to use INIMAINT on the INI file involved would cause a protection exception. 4. The filling of the window that holds the Key values, an OS/2 MLE, was very slow if the key value length exceeded 1,000 or so characters. If the value approached 64k, then time needed was several minutes, even on a fast machine. The loading has been changed and 64K can be loaded into the window in less than 10 seconds on the test machine, which is a 25mhz 486. However, there does not seem to be any way to clear a long key value from the window in less than approximately 45 seconds on the test machine. Several different approaches have been tried, but none of them resulted in a lower time. Therefore, it takes longer to clear the key value window than it takes to fill it. If the 45 seconds becomes a problem, hitting F3 will immediately terminate INIMAINT, which can then be restarted. However, it is hard to see how this could be done in less than 45 seconds on a regular basis. 5. A Repair feature is being worked on and is in the Online Help. However, there are still some problems with the code that compares the INI file entries to the actual contents of the desktop. This feature will be implemented in the next release. If the item is selected from the menu, the dialog box will appear and will be fully functional, except that the Execute Button will not work. Choosing Execute will result in a Message Box saying that the Execute has not been implemented in this release. 6. At least one user has a need to move a Key from one Application to another. The Duplicate Key item on the Action Menu has been modified so that the user will now be prompted for a New Application Name as well as a New Key Name. One of these names must be modified and the Key Value will be copied using the modified names. If just the Application Name is changed, then this has the effect of copying the Key Name and Value to the new Application. The information will remain using the old Application and Key Names unless specifically deleted by the user. where there are differences. ******************************* V1.1g ******************************* The items fixed in Version 1.1g are: 1. The clearing of the Key Value window could take a considerable amount of time when the key value was larger than a few thousand characters. This has been fixed by changing the code from sending a message to delete the contents of the window to simply destroying the window and recreating it. 2. Hitting F10 did not cause a refresh of the file, because the System uses F10 to hilight the first menu item. The Refresh was changed to F4. 3. The address and phone number for Carry Associates was changed in the documentation files, but was not changed in the About Dialog or in the online Help. This has been fixed. 4. A new item has been added to the Action Menu, Duplicate Application, which will make a duplicate copy of any Application in the same INI file using a different Application Name. 5. When a Key was Duplicated in an INI file and the copy was put in an Application that did not previously exist, the Application Listbox was not refreshed. This has been fixed. ******************************* V1.1h ******************************* The items fixed in Version 1.1h are: 1. A Rename Application item has been added to the Action Menu. This is the same as the Duplicate Application except that the old Application is deleted. ******************************* V1.1i ******************************* The items fixed in Version 1.1i are: 1. The Control Program Error indicator could be reset in an error situation before the Dump Dialog was displayed, thus losing this information. This has been fixed by saving the contents of this variable at the point that the initial error occurred. 2. The found flag was not always reset when multiple Find's were requested. The result of this was an indication that a target was found when it really was not. This has been fixed by resetting the found flag at the start of each find cycle. 3. A new item has been added to the Recover Menu, Repair INI file. Refer to the INIREP.TXT file for a detailed description of the currently available repair actions and the online help for how to use the facility. Initially, the only repair action that is available is to remove entries from any INI file that reference files which are not present on the desktop. 4. The Print function in the Compare and Repair Dialog boxes did not correctly print lines that were longer that the current page, the line would be truncated rather than carried over to the next line. This has been fixed. 5. When certain errors occurred, for example during a repair action or a file compare, the error was not reported via the Dump Dialog and INIMAINT would simply stop processing messages. This has been fixed by insuring that the various work threads correctly return any error indication to the controlling dialog and that the dialog procedure terminates the dialog when the error is seen. ******************************* V1.1j ******************************* The items fixed in Version 1.1j are: 1. A new item, Condense, has been added to the Repair Menu. This item will condense the empty space out of the Current, System, User or both System and User INI files with a single selection. INIMAINT has had this capability for some time, but it required a number of different selections to accomplish. 2. The menu item to change both the System and User INI files only changed the User INI file. This has been fixed. 3. An item has been added to the online help to describe what is meant be the System and User INI files. 4. The Size submenu has been expanded to add the ability to calculate a Size for the System INI File or User INI File without having to make one of these files the current INI file. 5. The Copy submenu has been expanded to add the ability to make a Copy of the System INI File, the User INI File or both the System and User INI files without having to make these files the current INI file. ******************************* V1.1k ******************************* The items fixed in Version 1.1k are: 1. A new submenu has been added to the Actions menu, Backup. This allows the user to make a backup copy of the System INI File, the User INI File or both the System and User INI Files. This item differs from the Copy item in two respects. First, in order for a Copy to be a true backup, the target file must not exist. With Copy, it was necessary for the user to insure that this was the case. The Backup menu item will automatically erase the file if it already exists. Second, each time a copy was done, it was necessary to specify the target INI file for the copy and, since INIMAINT only maintains a single target copy filename and does not save this filename from one execution of INIMAINT to the next, the names had to be reentered each time. INIMAINT will save the names of the System and User INI File backup target files and present them as the default target files each time a backup is requested. Finally, a new item has been added to the Options Dialog that allows the user to bypass being asked if they want to use the current backup target files. If this option is selected then INIMAINT will use the backup target files without asking the user for confirmation. 2. The Copying File Box would always be displayed during a copy, even if the Option was set to not display it. This has been fixed. 3. There were two potential heap corruption situations in the INICOPY program. In one case the wrong form of the free API was used. In the other case, it was possible to free the same memory block more than one time. Both of these have been fixed. 4. The Condense item on the Recover menu has been improved in two ways. First, INIMAINT will now automatically build a name for the temporary INI file and insure that it does not duplicate an existing file, this eliminates the need to ask the user for the temporary filename. Second, once the initial copy is done, INIMAINT will use the standard copy to make a second copy of the new file, erase the original file and then rename the second copy to the original name. This eliminates the need to do a second INI type of copy, which can take a relatively long time. The effect of this is to significantly reduce the amount of time that is required to do the Condense. 5. There was a serious bug in the Condense Both INI files code. The temporary file was not erase between the two copies, so the second file contained everything from both files. This has been fixed by erasing the temporary file immediately after the copy. ******************************* V1.1l ******************************* The items fixed in Version 1.1l are: 1. When attempting to do a Copy or Move with the System or User file as either the source or target file and lower case characters were user in either file name, the Copy could fail because INICOPY did not recognize the names as the names of these files, which must be opened differently. This has been fixed by forcing the names to upper case before checking them against the names of the standard files. 2. If an error was encountered setting the normal or wait pointers, it was not reported because the subroutines did not return an error return. This has been fixed. 3. If Cancel was chosen when the initial Condense Dialog was displayed a SYS3175 error would occur because a NULL pointer was passed to free(). This has been fixed by moving the free() to a point after the pointer has been validated. 4. it was possible for certain entries in some INI files to cause the INIMAINT Repair Dialog to terminate with a 1109 logic error and a DOS error of 123. This was caused by passing a name to DosLoadModule that it considered invalid, INIMAINT did not check for this return and would, therefore, post it as an error. This has been fixed by including this check in the list of returns that are considered valid returns by INIMAINT. 5. A logic error 1111 witha DosError of 15 was possible during a Repair because INIMAINT did not check for an Invalid Drive return from the DosOpen of a drive. This has been fixed by including this error in the normal set of checks. 6. When INIMAINT starts, it saves the current pointer from the Desktop so that it will know which pointer to restore after putting up the Wait pointer. It was possible, if some unusual pointer was displayed at the time that INIMAINT saved the current pointer, that the wrong pointer type would be saved and an attempt to restore to this incorrect pointer would cause a logic error 616. This has been fixed by saving the standard pointer rather than attempting to save the current pointer. 7. When the Condense of both the System and User INI files was selected. The desktop was reset two times for each file. This caused two problems, first, it takes a long time to reset the desktop and, second, on certain occasions it left the desktop in a condition where it was necessary to reboot before any work could be done. This has been fixed by, in this situation, copying both the System and User INI files before the first Reset. This way the desktop is only reset two times, which is the minimum possible. 8. Because of a conflict between the LOCKUP facility and Dialog boxes that have had their Parent switched to the Desktop Object Window, in order to make the dialog not visible, the Option that sets the display of the Copy Dialog will not work. The Copy Dialog will always be displayed, no matter what the setting of the Option. Once this problem is researched and something is done to remove the conflict, the Option will be reenabled. ******************************* V1.1m ******************************* The items fixed in Version 1.1m are: 1. When a Size was cancelled using the Esc key, the pointer did not return to the normal pointer and the thread was not terminated, thus INIMAINT would not do any work and had to be cancelled externally. This has been fixed. 2. The Options Dialog was becoming too high, so it has been broken into tow side by side lists. 3. A new Option, Fast Copy, has been added. If this Option is activated then INIMAINT will use special high speed methods to access the INI files when an entire file is being Copied, Moved, Backedup or Condensed. This greatly reduces the time necessary to process large INI files, such as the System and User INI files. ******************************* V2.0 ******************************* The items fixed in Version 2.0 are: 1. This version is a full 32 bit version. 2. A number of improvements have been made to the INSTALL procedure, including the ability to install all the files into a single subdirectory. 3. The Repair and Compare Dialogs had the Options box and the results Listbox too close together the Dialog was also too high to comfortably fit on a default 640x480 screen. Both of these have been fixed. 4. When an error was encountered in the Repair Process, the line from the INI file that caused the problem was not placed into the supplemental error text field. This has been fixed. 5. Because the 16 bit Prf API's were limited to 64K of data for any key Value, INIMAINT was limited to reading and displaying this amount of data. The restriction has been removed with this version because of the conversion to full 32 bit. 6. The Repair Function had attempted to see if *.PSF files that were in the INI files with no path information actually existed on the Desktop. DosLoadModule was used for this check, since the files should be in the LIBPATH. It turns out that DosLoadModule will not find anything other than DLL files, so this check was removed. 7. The Repair Function ignored files that had a pathname that indicated they were on a floppy drive, a disk drive with removable media, a tape drive, an unknown type of drive, an invalid drive and a drive that could not be accessed via DosOpen. Since it is very unlikely that any INI file entry that has a pathname that starts with any of these type of drive is one that should remain in the INI file, all of these conditions have been added to the list of situations that INIMAINT will recommend for removal. 8. If Help was requested while doing a Repair after a new Save INI File or Write File was selected, the Help would not work because the Repair Dialog was not reset as the active help window. This has been fixed. 9. If the Repair function encountered a path and filename combination that looked like it was valid, but it was not, the Repair would terminate with a 1109 Logic Error Code. This has been fixed by adding checks for an invalid filename at the appropriate points. ******************************* V2.0a ******************************* The items fixed in Version 2.0a are: 1. V2.0 forced and path and filenames to upper case in a number of places. The caused a number of problems with lower case characters in filenames and this code has been removed. 2. It was possible for the New File Dialog to go into a loop during the initialization phase. This has been fixed by checking if the code involved has already been executed, and causing an abend if it has. 3. Two of the SIZE Accelerator keys used Alt-F8 and Alt-F9, which are used by OS/2, so they are not available. The SIZE User INI File has been changed to Alt-R and the SIZE System INI File has been changed to Alt-M. 4. The New File Dialog was not wide enough, so it has been expanded. ******************************* V2.0b ******************************* The items fixed in Version 2.0b are: 1. Because of problems with the custom New File Dialog, this version has been modified to use the standard OS/2 New File Dialog.