Uniface Underground-> Miserable.Undebug.Marker. Go Home

The new Uniface 7.2.04 debugger (also in 7.2.5) contains a new browser to view Uniface Components with a tree view. Somewhat like the nice utility Dominik Michel shared with us on $UUU.

Strangely enough, although some Uniface components could be browsed in that way, it did not work always. Some Uniface Components made appear a message like...

Blas López indicated that Uniface components compiled with the nodebug-option, contain a non-debug mark, which seemed to be responsible for this message. He called it the Miserable Undebug Marker (MUM), which is quite an appropriate name for it. It's a pity he left the Uniface community. We hope that not for a long time ;-)

Looking into it in more detail (in debugging the debugger, etc.), it became clear that the Open-window was reading the signatures in the urr-files (like usys.urr, which may take some time ...). This explained for the fact that some files (like idf*.frm or a *.aps) are not visible in the Open-Window. But, nevertheless, they could still be opened in the browser by typing the file-name. In Uniface 7.2.04, the same seems also to apply to menu's and other global objects.

The message like Component can not be browsed seemed to be triggered by at least two conditions...

When the Uniface component contained the Mum.
When the debugger was looking for the file to be opened in a folder which doesn't contain the file.

Depending on your assignment-file and the name of the Uniface component, this might be the usys-directory, the working-directory, etc.: in this case, a file utility might be helpful to find out where the debugger is looking for the file to be browsed.

It was a amusing puzzle to find out how the Mum was working and it might be helpful for people working with Uniface to have a kind of MumKiller, you could do this using an Hex editor or using UnMum.exe programmed by Paul Hermanswhich removes the Mum from Uniface components.

Hexadecimal Source

The MumKiller prevents the message like Component can not be browsed from appearing on your screen (if at least the debugger is able to find the file you are trying to open).

In this way you will have the possibility to deploy all your components with a Mum. Whenever you need to debug them yourself, you backup the Mum-components, run UnMum, debug whatever you like and, in the end, you put back the Mum-components.




The UnMum.exe program has been compiled with a Win32-compiler and it has been tested only with Uniface 7.2.04/05 (download the right version) and Windows 95. It is probably not working with other versions, like 7.2.02.

You need to start it from within a Dos-box and the program will try to find all Uniface components in the same directory as where you run the program.

Use only directory names of no more than 8 characters, without any (blank) spaces, when running the program.

The program presumes that all *.frm, *.svc, *.rpt, *.usp-files are Uniface components: so back up the directory in which you like to start UnMum, before running the program !

The program will try to remove the Mum from all the Uniface components he is able to find.

Only the files containing the Mum should be affected by the program (no guarantee however).

The program indicates whether or not a file contained the Mum also, indicates if the filesize has changed when removing the MUM from a file: in that case, the file can probably not be used any more with Uniface 7.2.04/05 (so backup your files before running it !).


Unmum.zip for 7.2.4 (38Kb) Download the mum 7.2.4 killer.

Unmum.zip for 7.2.5 (37Kb) Download the mum 7.2.5 killer Updated read.me file.

For any questions/remarks, you might try phermans@ifrance.com.



Copyright © 1999-2000  $UUU  All rights reserved.
Disclaimer. | Site Comments.