Custom Action Script to uninstall WinZip
I need help in un-installing legacy Winzip 6.0, 7.0, 8.0 to create or write a Custom Action using VBScript inside a new repackage WinZip 9.0 in MSI.
0 Comments
[ + ] Show comments
Answers (3)
Please log in to answer
Posted by:
sruzich
20 years ago
We have had some luck with a VB script that does the uninstall of legacy Winzip and then goes on to kick off the msi install of Winzip 9.0. We are fighting an issue with the msi install though in that our company standard has the "My Documents" and "Favorites" paths redirected in the Shell Folders areas under HKCU. If the network drive is not mapped, the install fails. I don't understand why Winzip even bothers to look at those HKCU paths?
Posted by:
jotobax
20 years ago
sruzich,
I have no problem in removing Winzip installed in MSI. I can always use the upgrade code from old Winzip version and attached in my Upgrade Table of my Winzp 9.0 MSI installation. This will kick off the previous winzip version before the installation of 9.0 in MSI.
I have found a script to remove Winzip 8.0 in VBscript but how can I add the non MSI installed Winzip 9.0.
Let me know,
Thanks,
-jotobax
I have no problem in removing Winzip installed in MSI. I can always use the upgrade code from old Winzip version and attached in my Upgrade Table of my Winzp 9.0 MSI installation. This will kick off the previous winzip version before the installation of 9.0 in MSI.
I have found a script to remove Winzip 8.0 in VBscript but how can I add the non MSI installed Winzip 9.0.
Let me know,
Thanks,
-jotobax
Posted by:
sruzich
20 years ago
See below for possible suggestion. Do you have any ideas on how to deal with our "My Documents" User Shell Folders path problem? We would like to install WinZip 9.0 without any reference or dependence on where My Documents is located.
Have you tried something like this?
On Error Resume Next
Set WshShell = CreateObject("Wscript.Shell")
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
fso.DeleteFile("C:\Documents and Settings\All Users\Start Menu\Programs\WinZip 8.1 .lnk")
Dim fs1
Set fs1 = CreateObject("Scripting.FileSystemObject")
main()
sub main()
WZPath=regget("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\winzip32.exe\")
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run WZPath & " /uninstallx",0,TRUE
FullWZPath = replace(WZPath, "PROGRA~1", "Program Files")
DeleteAFolder(left(FullWZPath,(len(FullWZPath)-13)))
end sub
function regget(value)
on error resume next
Set regedit = CreateObject("WScript.Shell")
regget=regedit.RegRead(value)
end function
function DeleteAFolder(filespec)
Dim fso
on error resume next
Set fso = CreateObject("Scripting.FileSystemObject")
fso.DeleteFolder(filespec)
end function
Have you tried something like this?
On Error Resume Next
Set WshShell = CreateObject("Wscript.Shell")
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
fso.DeleteFile("C:\Documents and Settings\All Users\Start Menu\Programs\WinZip 8.1 .lnk")
Dim fs1
Set fs1 = CreateObject("Scripting.FileSystemObject")
main()
sub main()
WZPath=regget("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\winzip32.exe\")
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run WZPath & " /uninstallx",0,TRUE
FullWZPath = replace(WZPath, "PROGRA~1", "Program Files")
DeleteAFolder(left(FullWZPath,(len(FullWZPath)-13)))
end sub
function regget(value)
on error resume next
Set regedit = CreateObject("WScript.Shell")
regget=regedit.RegRead(value)
end function
function DeleteAFolder(filespec)
Dim fso
on error resume next
Set fso = CreateObject("Scripting.FileSystemObject")
fso.DeleteFolder(filespec)
end function
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
so that the conversation will remain readable.