Hi, I need to deploy MS Forefront UAG Client Components 4.0.0. The problem is that the uninstall reboots the PC without warning or delay possibility.
The original source is an MSI, however the only thing the MSI does is extracting the actual source files to a temporary folder and then it launches a setup.exe file which handles the installation itself. Using msiexec /x on the MSI file doesn't work. But I found that passing /q UNINSTALL=1 to the MSI launches the uninstall procedure. It actually calls this command: "rundll32.exe C:\WINDOWS\DOWNLO~1\WhlMgr.dll,UnInstall 3.1.0 63 0 0 4.0.0". The zero (0) before "4.0.0" means silent, but it reboots PC without warning. When I put it to 1 (not silent), I get a message box with a reboot prompt (yes/no). So there is a way to delay reboot, but I can't find how to trigger it in silent mode. Capturing everything is tricky, it messes up Windows logon...
I can't find anything on the internet, even on Microsoft websites. I already tried parameters as /? etc. on EXE files, but that doesn't work either...
Does someone have experience with this?
Any help is welcome!

Thanks in advance,

Koen
1 Comment   [ + ] Show Comment

Comments

  • The "WhlClientSetup-Basic.msi" has the following uninstall string

    "rundll32.exe C:\Windows\DOWNLO~1\WhlMgr.dll,UnInstall 3.1.0 63 0 1 4.0.0"

    the digits shows Hint number of function in the WhlMgr.dll.

    for silent uninstall disable the FinishInstall() and DllgetClassObject() Functions ,

    Thus the new Uninstall string is like:
    "rundll32.exe C:\Windows\DOWNLO~1\WhlMgr.dll,UnInstall 3.1.0 63 0 0 0.0.0"

    add it to custom action,shedule it after install finalise in execute imidiate(if doing from MSI),else use it as it is manually
    - See more at: http://www.itninja.com/question/forefront-uag-client-components-suppress-reboot-during-uininstall#sthash.fOpRP4J3.dpuf
Please log in to comment

Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.

Answers

0
Hi
Have you tried to craeting response file and supressing reboot. If you are able to crate ISS file then pass this file at uninstallation time to setup.exe. It may solve your problem.
Answered 06/30/2010 by: MsiCreator
Senior Yellow Belt

Please log in to comment
0
Already tried that, doesn't work. The setup.exe doesn't seem to accept the -r or /r parameters.
Answered 06/30/2010 by: koswo
Orange Belt

Please log in to comment
0
Open up the EXE in a decent text or hex editor (which discounts NotePad and WordPad, obviously!) and see if you can find any obvious text.

Myself, I'd be capturing the extracted set-up as an MSI. I find it most unusual that a Microsoft product embeds an installer EXE in an MSI. I can't recall a single MS product which does that... :(
Answered 06/30/2010 by: VBScab
Red Belt

Please log in to comment
0
Opened it with Notepad++ and did a search on uninstall, reboot, norestart and suppress, but nothing usable.

I can upload the files if you want to have a look...
Answered 07/01/2010 by: koswo
Orange Belt

Please log in to comment
0
Hi Koswo
have u got an solution for this application..........to suppress the reboot prompt at the time of uninstallation .
if yes please let me know[:)]
thanks in advance
Answered 07/07/2010 by: eskonar
Senior Yellow Belt

Please log in to comment
0
No, problem not solved yet.
Answered 07/07/2010 by: koswo
Orange Belt

Please log in to comment
0
Some one please help me for Silent Un-install for "MS Forefront UAG Client Components 4.0.0."
Answered 07/07/2010 by: RahulRaman
Yellow Belt

Please log in to comment
0
I encountered this problem recently and got round the problem using AutoIt. This is a script language which amongst other things can send keystrokes to specific windows so I configured it to press the 'No' reboot button then 'Close' the other window.

Compile the following AutoIt code into an EXE:
AutoItSetOption("WinTitleMatchMode", 3)
WinWait("Forefront UAG client components","",1800)
SendKeepActive ("Forefront UAG client components")
Send("{RIGHT}")
Send("{SPACE}")
WinWait("Uninstalling Forefront UAG client components","",60)
SendKeepActive ("Uninstalling Forefront UAG client components")
Send("C")

Create some sort of script which runs the AutoIt exe then your normal uninstall command line for Forefront UAG (without changing the value to suppress user interaction).

The AutoIt EXE runs in the background and waits until the Forefront uninstaller gets to the bit where the user is prompted to reboot then sends the required keystrokes. A bit of a fudge, I couldn't think of anything better.
Answered 03/08/2011 by: nortonl
Senior Yellow Belt

  • The "WhlClientSetup-Basic.msi" has the following uninstall string

    "rundll32.exe C:\Windows\DOWNLO~1\WhlMgr.dll,UnInstall 3.1.0 63 0 1 4.0.0"

    the digits shows Hint number of function in the WhlMgr.dll.

    for silent uninstall disable the FinishInstall() and DllgetClassObject() Functions ,

    Thus the new Uninstall string is like:
    "rundll32.exe C:\Windows\DOWNLO~1\WhlMgr.dll,UnInstall 3.1.0 63 0 0 0.0.0"

    add it to custom action,shedule it after install finalise in execute imidiate(if doing from MSI),else use it as it is manually - See more at: http://www.itninja.com/question/forefront-uag-client-components-suppress-reboot-during-uininstall#sthash.fOpRP4J3.dpuf
Please log in to comment
0
We raised a Premier Support call about this and Microsoft offered a hotfix which allows command line control over reboot behaviour. It has not been fully tested and is only available privately if you raise a Premier Support call (I can't provide a copy). I was told this functionality will be rolled into a future release.
Answered 04/05/2011 by: nortonl
Senior Yellow Belt

Please log in to comment
0
Can you please post the following script in vbscript .I am a beginner . I am facing the same problem. It would be helpful if you can convert the autoit script to vbscript
Answered 06/09/2011 by: nagaraju118
Orange Senior Belt

Please log in to comment
0

The source "WhlClientSetup-Basic.msi" has the following uninstall string

"rundll32.exe C:\Windows\DOWNLO~1\WhlMgr.dll,UnInstall 3.1.0 63 0 1 4.0.0"

the underlined digits shows Hint number of function in the WhlMgr.dll.

for silent uninstall disable the FinishInstall and DllgetClassObject Functions ,
Thus the new Uninstall string will be

"rundll32.exe C:\Windows\DOWNLO~1\WhlMgr.dll,UnInstall 3.1.0 63 0 0 0.0.0"

add it to custom action,shedule it after install finalise in execute imidiate

 

 

Answered 10/25/2013 by: Heet
White Belt

Please log in to comment
Answer this question or Comment on this question for clarity