Create CA to stop a service to unistall
Please help!
Hi, I have been thrown into packaging, and I am having problems with uninstalling a MSI. I tried just making an if statement, If REMOVE=ALL, then 'C:\Program Files\... Uninstall ... But this is not working. I know the best way to do it is to make an CA to stop the service, 'c:\Windows\system32\CCM\Logs\PolicyAgent.log', then run the uninstall, then restart the service, but I can't figure that one out yet.
Hi, I have been thrown into packaging, and I am having problems with uninstalling a MSI. I tried just making an if statement, If REMOVE=ALL, then 'C:\Program Files\... Uninstall ... But this is not working. I know the best way to do it is to make an CA to stop the service, 'c:\Windows\system32\CCM\Logs\PolicyAgent.log', then run the uninstall, then restart the service, but I can't figure that one out yet.
0 Comments
[ + ] Show comments
Answers (11)
Please log in to answer
Posted by:
anonymous_9363
14 years ago
MSIs contain a ServiceControl table and a ServiceInstall table. The combination can be set up to control services such that they're stopped before an uninstall: there should be no need to use a CA. Also:
make an CA to stop the service, 'c:\Windows\system32\CCM\Logs\PolicyAgent.log', then run the uninstall, then restart the serviceIf you're uninstalling a service, why would you then try to restart it?
Posted by:
ccwbutler
14 years ago
I have the MSI working to install, but I am trying to uninstall it, via the /x on the MSI. This is for Masterworks 6.1. I found a link to uninstall Masterworks via, "c:\Prog Files\ARCOM\Specware\Masterworks\Uninstall Masterworks 6.1". So I tried creating a CA If statement, (If REMOVE=ALL, then 'C:\Program Files\..., but it is not working. Just running that does uninstall the program. I am just not sure how to get it to work in the package.
The service that would have to be stopped is the CCM.exe, which may be an issue if I stop and start it up. Just not sure what is the correct way, and how to get a successful uninstall with the MSI I created.
The service that would have to be stopped is the CCM.exe, which may be an issue if I stop and start it up. Just not sure what is the correct way, and how to get a successful uninstall with the MSI I created.
Posted by:
anonymous_9363
14 years ago
OK...
One, CCM.EXE is the SCCM/SMS client. Quite why you think you need to stop it running to uninstall a word-processing add-in application escapes me.
Two, you shouldn't need to run any uninstall program to uninstall an application which was installed by an MSI (unless that MSI's only function was to wrap the vendor's installation program, of course). What does the registry's 'UninstallString' value look like, i.e. the value for HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall\[Masterworks_ProductCode]\UninstallString, where '[Masterworks_ProductCode]' is a standard GUID?
One, CCM.EXE is the SCCM/SMS client. Quite why you think you need to stop it running to uninstall a word-processing add-in application escapes me.
Two, you shouldn't need to run any uninstall program to uninstall an application which was installed by an MSI (unless that MSI's only function was to wrap the vendor's installation program, of course). What does the registry's 'UninstallString' value look like, i.e. the value for HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall\[Masterworks_ProductCode]\UninstallString, where '[Masterworks_ProductCode]' is a standard GUID?
Posted by:
elgwhoppo
14 years ago
Dude, you've obviously been thrown into packaging.
First of all, if you're using SMS/SCCM to deploy the removal, you can't stop the service that SMS/SCCM is using to run the uninstall. [:(]
Secondly, please clearly state what you're trying to accomplish, with the posts so far it looks like you're just scrambling and throwing out terms. Clearly state what you're trying to accomplish, and what method you're using to do it. Like Ian said, check the UninstallString in the registry. Please post back with that.
First of all, if you're using SMS/SCCM to deploy the removal, you can't stop the service that SMS/SCCM is using to run the uninstall. [:(]
Secondly, please clearly state what you're trying to accomplish, with the posts so far it looks like you're just scrambling and throwing out terms. Clearly state what you're trying to accomplish, and what method you're using to do it. Like Ian said, check the UninstallString in the registry. Please post back with that.
Posted by:
ccwbutler
14 years ago
What I am trying to do is get my MSI to install and uninstall. I get errors with the ...ccm/logs when I try to uninstall, so I was told to stop the service, (ccm.exe), uninstall, then start it back up. I am an SMS admin, and I was not sure that would be the way to go, but I threw it out there.
I found a link on this site for the uninstall string. "c:\Program Files\ARCOM\Specware\Masterworks\Uninstall Masterworks 6.1\Uninstall Masterworks 6.1.exe", and it works. I just don't know how to implement that into the MSI. I have tried using a CA, with an If statement, "If REMOVE-ALL then C:\Program Files\....." (that string), but it is not working.
This is my first CA, and I guess I am doing something wrong. The actions I used : If Statement, then the Execute Program from Destination, pointing it to that string path.
Sorry for the confusion, I am just a little green with WPS.
I found a link on this site for the uninstall string. "c:\Program Files\ARCOM\Specware\Masterworks\Uninstall Masterworks 6.1\Uninstall Masterworks 6.1.exe", and it works. I just don't know how to implement that into the MSI. I have tried using a CA, with an If statement, "If REMOVE-ALL then C:\Program Files\....." (that string), but it is not working.
This is my first CA, and I guess I am doing something wrong. The actions I used : If Statement, then the Execute Program from Destination, pointing it to that string path.
Sorry for the confusion, I am just a little green with WPS.
Posted by:
anonymous_9363
14 years ago
Posted by:
anonymous_9363
14 years ago
OK, so to uninstall almost silently, try:
MsiExec.exe /x {13730DF5-D244-4108-9BC3-7D3429B9DAF9}/qb /l*v %temp%\some_log_name_or_other.log
This command line will produce a log called 'some_log_name_or_other.log' in your %TEMP% folder. If the uninstall fails, open the log and look for the text 'Return value 3.' Copy the dozen or so lines above and below that line and post them here. Remember to use the CODE tag for that.
Posted by:
ccwbutler
14 years ago
Here it is.
MSI (s) (80:E8) [10:31:33:906]: Note: 1: 2318 2: C:\Config.Msi\232d08.rbf
MSI (s) (80:E8) [10:31:33:906]: Note: 1: 1306 2: C:\WINDOWS\system32\CCM\Logs\PolicyAgent.log
MSI (c) (3C:30) [10:31:32:453]: Font created. Charset: Req=0, Ret=0, Font: Req=MS Shell Dlg, Ret=MS Shell Dlg
Error 1306. Another application has exclusive access to the file 'C:\WINDOWS\system32\CCM\Logs\PolicyAgent.log'. Please shut down all other applications, then click Retry.
MSI (s) (80:E8) [10:31:34:453]: Product: MasterWorks -- Error 1306. Another application has exclusive access to the file 'C:\WINDOWS\system32\CCM\Logs\PolicyAgent.log'. Please shut down all other applications, then click Retry.
MSI (s) (80:E8) [10:31:34:468]: Note: 1: 2318 2: C:\Config.Msi\232d08.rbf
MSI (s) (80:E8) [10:31:34:468]: Note: 1: 1306 2: C:\WINDOWS\system32\CCM\Logs\PolicyAgent.log
MSI (c) (3C:30) [10:31:33:921]: Font created. Charset: Req=0, Ret=0, Font: Req=MS Shell Dlg, Ret=MS Shell Dlg
Error 1306. Another application has exclusive access to the file 'C:\WINDOWS\system32\CCM\Logs\PolicyAgent.log'. Please shut down all other applications, then click Retry.
MSI (s) (80:E8) [10:31:36:828]: Product: MasterWorks -- Error 1306. Another application has exclusive access to the file 'C:\WINDOWS\system32\CCM\Logs\PolicyAgent.log'. Please shut down all other applications, then click Retry.
MSI (c) (3C:30) [10:31:34:468]: Font created. Charset: Req=0, Ret=0, Font: Req=MS Shell Dlg, Ret=MS Shell Dlg
Error 1306. Another application has exclusive access to the file 'C:\WINDOWS\system32\CCM\Logs\PolicyAgent.log'. Please shut down all other applications, then click Retry.
MSI (c) (3C:30) [10:31:36:828]: Font created. Charset: Req=0, Ret=0, Font: Req=MS Shell Dlg, Ret=MS Shell Dlg
Are you sure you want to cancel?
MSI (s) (80:E8) [10:31:38:359]: User policy value 'DisableRollback' is 0
MSI (s) (80:E8) [10:31:38:359]: Machine policy value 'DisableRollback' is 0
Action ended 10:31:38: InstallFinalize. Return value 3.
MSI (s) (80:E8) [10:31:38:375]: Executing op: Header(Signature=1397708873,Version=301,Timestamp=1011044929,LangId=1033,Platform=0,ScriptType=2,ScriptMajorVersion=21,ScriptMinorVersion=4,ScriptAttributes=1)
MSI (s) (80:E8) [10:31:38:375]: Executing op: DialogInfo(Type=0,Argument=1033)
MSI (s) (80:E8) [10:31:38:390]: Executing op: DialogInfo(Type=1,Argument=MasterWorks)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RollbackInfo(,RollbackAction=Rollback,RollbackDescription=Rolling back action:,RollbackTemplate=[1],CleanupAction=RollbackCleanup,CleanupDescription=Removing backup files...,CleanupTemplate=File: [1])
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232ce5.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232ce6.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232ce7.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232ce8.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232ce9.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232cea.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232ceb.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232cec.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232ced.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232cee.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232cef.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232cf0.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232cf1.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232cf2.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232cf3.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232cf4.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232cf5.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232cf6.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232cf7.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232cf8.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232cf9.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232cfa.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232cfb.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232cfc.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232cfd.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232cfe.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232cff.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232d00.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232d01.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232d02.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232d03.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232d04.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232d05.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232d06.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232d07.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: RegisterBackupFile(File=C:\Config.Msi\232d08.rbf)
MSI (s) (80:E8) [10:31:38:390]: Executing op: ActionStart(Name=RemoveFiles,Description=Removing files...,Template=File: [1]
Directory: [9])
Posted by:
elgwhoppo
14 years ago
Hah, Ok. I have a handle on this one now.
Whoever created your package did 2 bad things. First, they didn't use a clean machine. They used one with the SMS client installed on it, which writes logs on a consistent basis. Secondly, they captured something that was not a part of the MasterWorks installation, which happened to be C:\WINDOWS\system32\CCM\Logs\PolicyAgent.log, which is the log file for policy within the SMS client.
What I would do if I was in your situation, is you're going to have to update the installation on all the computers so that file is not included in the installation, then you will be able to remove the Masterworks MSI with the command line you previously used.
Ian, would you recommend any other route?
Soo..that's what you did. My hourly is $120 (minimum 1 hr) if you want me to fix it for you. : D
Whoever created your package did 2 bad things. First, they didn't use a clean machine. They used one with the SMS client installed on it, which writes logs on a consistent basis. Secondly, they captured something that was not a part of the MasterWorks installation, which happened to be C:\WINDOWS\system32\CCM\Logs\PolicyAgent.log, which is the log file for policy within the SMS client.
What I would do if I was in your situation, is you're going to have to update the installation on all the computers so that file is not included in the installation, then you will be able to remove the Masterworks MSI with the command line you previously used.
Ian, would you recommend any other route?
Soo..that's what you did. My hourly is $120 (minimum 1 hr) if you want me to fix it for you. : D
Posted by:
ccwbutler
14 years ago
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.