Post Reply

Forums -> UltraMon™ -> Can't uninstall Ultramon?
Dan Butterfield   2009-11-13 17:36
I recently installed UM 3.0.7 Beta 64 bit on a Windows 7 64 bit machine. I used to use a script with UM on my machine when it had XP on it that cycles wallpapers and switches between dual and single monitor wallpapers depending on whether I'm docked or not. I did not know if it'd work with the newest UM on the newest Windows, so tried it out and sadly it didn't work.

Thinking there might be a compatibility issue from the 32 bit to the 64 bit version of UM, I decided to uninstall UM 64 bit and try installing UM 32 bit to see if it worked any better. The weird thing is: I CAN'T UNINSTALL UM!

Every time I try, I get a failure during the uninstall saying "Could not open key: UKNOWN\Installer\Products\19663A02B90B2FE43A17465ADB62E502\SourceList\Media. Verify that you have sufficient access to that key, or contact your support personnel." I have tried using REGEDIT, REGEDT32 to remove this key, I have disabled anti-virus software, UAC, I have run REGEDIT "as administrator", I have even tried removing the key in Safe Mode, and nothing works. Any attempt at accessing that key results in an "Access Denied" error, and the UM uninstall never succeeds.

Does anyone have any idea? I don't have an urgent need to uninstall UM, since I figure it's unlikely my script would work with the 32 bit version even if that version worked on 64 bit Windows. However, I figure SOMEDAY I will want to uninstall or upgrade UM, and as far as I can tell now, I will never be able to do that! Any help would be appreciated!

- Dan Butterfield
Christian Studer   2009-11-14 09:24
I'm not sure what might cause this, but you could run regedit.exe under the system account, this should allow you to change permissions for the key. I would recommend giving administrators full control over the key, but don't delete the key, setup might need it.

To run regedit.exe under the system account:

1) download PsExec and extract the ZIP file to a folder of your choice

2) open a command prompt as administrator

3) run the following command:

psexec -s -i regedit

You may need to specify the path to psexec as well, for example:

C:\Temp\psexec -s -i regedit

Christian Studer - www.realtimesoft.com
Christian Studer   2009-11-14 09:25
BTW, you'll need to install the 64-bit version of UltraMon on 64-bit Windows, the 32-bit version won't work.

What's the script you were using, and what error did you get?

Christian Studer - www.realtimesoft.com
Dan Butterfield   2009-11-15 16:24
Thank you!! The Psexec deal did the trick, I can now access those registry keys w/o a problem! I won't bother uninstalling UM 64 bit for the reason you mention, but at least now I know I'll be able to upgrade when the time comes to do so.

The script I am trying to run is an ActiveState Perl script I wrote myself that I used to run succesfully under WinXP 32 and a prior version of UM. Basically, I can't create the UltraMon COM objects, did they change name in the 64 bit version? Here's a sample in Perl that fails:
use Win32::OLE; my $UMUtility = Win32::OLE->new('UltraMon.Utility') or die "Cannot access UltraMon Utility object.\n"; print "Accessed UltraMon Utility object successfully!!";
I also can't get a VBS version to work:
Dim sys Set sys = CreateObject("UltraMon.Utility") MsgBox "Created UltraMon Utility object successfully!"
Both of these fail when they try to create the UltraMon Utility object.

- Dan Butterfield
Christian Studer   2009-11-16 09:13
Maybe the COM objects weren't registered properly for some reason, your script should work fine, there were no name changes.

I would first try if repairing the UltraMon installation fixes the problem, you can do this via Control Panel > Programs and Features, select UltraMon then click on Repair.

If that doesn't help, try registering the DLLs manually. To do this, open a command prompt as administrator, then run the commands

regsvr32 C:\Windows\SysWOW64\UltraMon.dll
regsvr32 "C:\Program Files (x86)\Common Files\Realtime Soft\UltraMon\x64\UltraMon.dll"

This registers both the 32- and 64-bit versions of the COM objects.

Christian Studer - www.realtimesoft.com
Dan Butterfield   2009-11-16 15:57
Well, my problem seems to have been a general registry permission. Registering the DLL's manually at the command line fails with an access denied error. Manually fixing the permissions for the 20 or so registry keys using the method you gave me allowed me to uninstall UM, then reinstall it. However, then it still has the same permission problem. All the UM registry keys have no owner and no assigned permission.

Finally, I just assigned ownership to myself for all the keys in the HKEY_CLASSES_ROOT part of the registry, and now UM installs, uninstalls, and registers COM objects just fine, and my script runs as well. I have no idea why the previous problem was occurring! Thank you for your help!

One last question: the old 2.x version of UM stored stretched wallpaper images as uncompressed BMP's in the same directory the corresponding UM .wallpaper file is stored. (directory C:\Users\Userid\AppData\Roaming\Realtime Soft\UltraMon\3.0.7\Wallpapers for UM 3.x). My script cycles wallpapers by changing these files. It looks like UM 3.x does not do this any more... does it have a BMP version of the wallpaper anywhere, or does it always go back to the JPG source file for a wallpaper image?

- Dan Butterfield
Christian Studer   2009-11-17 08:09
Version 3 only saves a single wallpaper bitmap in C:\Users\<username>\AppData\Local\Realtime Soft\UltraMon, this gets updated whenever you change the wallpaper.

You can run UltraMonDesktop.exe with the /load argument to load a different wallpaper, UltraMon will then update the wallpaper bitmap. See UltraMon Help > Scripting > Command-line arguments for details.

Christian Studer - www.realtimesoft.com
Forums -> UltraMon™ -> Can't uninstall Ultramon?

Post Reply