Application Supersedence not working as I want and expect!

Hello,

I need help to find out how to properly deploy an upgraded application using the SCCM 2012 Application supersedence.

What I have

  1. One application in production with version 1.0. Let us call it APPL-BLUE1.0
  2. New application of the same product with version 2.0. Let us call it APPL-RED2.0

What I want to achieve (the goal)

Users should be notified via the Software Center that a new update is available. The new update should not be installed until the user is ready and manually triggers the installation via the Software Center.

My configuration settings

On application APPL-RED2.0 I have gone to Properties -> Supsersedence and added the APPL-BLUE1.0 to the Supsersdence list. Replacement Deployment Type is configured (set to the Deployment type for the APPL-RED2.0) and the Uninstall checkbox is checked (to uninstall the APPL-BLUE1.0 deployment type first).

Install behaviour for APPL-RED2.0 is "Install for system" and "Whether or not a user is logged on" with Normal visibility.

Then I create the Deployment which I have tried three different ways.

  1. Action: Install, Purpose: Available, "Automatically upgrade any superseded versions of this application" unchecked.
  2. Action: Install, Purpose: Available, "Automatically upgrade any superseded versions of this application" checked.
  3. Action: Install, Purpose: Required, "Automatically upgrade any superseded versions of this application" checked (forced, greyed out).

What happens

  1. The application is not automatically made available in the users Software Center at all. No notification is presented and the user has to access the installation by looking in the Application Catalogue first. Once found in the Application Catalogue the installation runs without problems but this means that the user must somehow know there is a new version available through other means.
  2. The application is automatically installed (without regard to whether or not the application is in use) on the client and a notification is presented on the users machine (Software Center).
  3. Exactly the same result as for #2.

This conflicts with what I want to achieve. I want a notification and that the application is automatically made available for installation in the Software Center but I do not want it to automatically upgrade but rather let the user initiate the installation whe he or she is ready (i.e. when the application is not in use).

Please point me in the right direction in order to accomplish this.

Thank you.

Sindre

November 16th, 2012 9:30am

Hi,

If you want it visible in Software Center and initiate the upgrade from Software Center you should deploy the Installation of APPL-RED2.0 in your scenario to a Collection created with all computers that have the application installed. If you make it available to a User Collection it will only show up in Application Catalog.

Regards,
Jrgen

Free Windows Admin Tool Kit Click here and download it now
November 16th, 2012 9:37am

Hi,

If you want it visible in Software Center and initiate the upgrade from Software Center you should deploy the Installation of APPL-RED2.0 in your scenario to a Collection created with all computers that have the application installed. If you make it available to a User Collection it will only show up in Application Catalog.

Regards,
J

November 16th, 2012 11:04am

I guess the conclusion is; You cannot use Application Supersedence for this purpose.
Free Windows Admin Tool Kit Click here and download it now
November 19th, 2012 9:11am

Hi there,

we are having similar problems with collection which are set to be just available but have the deployment of a supersedence application. It just installs itself without asking which is the normal behavior for a required collection.

I checked the client settings and there is point called: "Additional software manages the deployment of applications and software updates" but after activating neither the required collections get installed automatically as described.

Another info is that after activating this option the software center has to be extended with a self programmed action. Has anyone experience with that or know how to start?

Thanks

Stephan

March 8th, 2013 8:50am

I checked the client settings and there is point called: "Additional software manages the deployment of applications and software updates" but after activating neither the required collections get installed automatically as described.
This has to be unchecked (=false) if you are using ConfigMgr only.
Free Windows Admin Tool Kit Click here and download it now
March 8th, 2013 9:10am

Thanks Thorsten!

And how to get it working if I want to enable this option? What are the next steps with the SDK?

Thanks in advance

http://technet.microsoft.com/en-us/library/gg682067.aspx

March 8th, 2013 9:50am

I was able to achieve your goal in my test environment with different version of same application.

The only difference is that I've deployed both the application to device collection as an available application and configured supersedence.

Hope this would help..

Free Windows Admin Tool Kit Click here and download it now
March 12th, 2013 1:39pm

Have you tried changing the application deployment evaluation cycle to increase the speed the update is detected?

also with the notification issue, I have a similar problem and have a script in place. Our business rules are to install the application asap giving the user 6 mins to close it. but this script could easily be changed to allow it to wait non stop.

Or maybe you could set a requirement for the deployment type, a custom script that checks if the application is running, but I am not sure on what cycle the application will evaluate this. or if it will evaluate it then download the application (leaving a window for the application to be run)

Also in case it is not obvious I have removed functions and keywords. but this should give you an idea of how to achieve your desired results

'Check if current version

if CheckMSIVersion("{removed}","removed") = 1 then
	wscript.quit(0)
end if

'sets path of script
strScriptDir = getParentDirectory

intACProcesses = CountACProcesses

'Check if running
if intACProcesses >= 1 then
		'runs warning HTA
		wshShell.Run ("""" & strScriptDir & "\BeforeInstallAlert.hta """),3,False
		'Untill app is closed keep activating alert and checking to see if it is running
		const timeout = 360000
		const timepoll = 15000
		
		do while intACProcesses >= 1 and i < timeout
			intACProcesses = CountACProcesses
			if intACProcesses >= 1 Then
					wscript.sleep timepoll
				end if
			i=i+timepoll
			wshshell.AppActivate "Appname Upgrade Alert"
		Loop	
end if

'Kill AC
killProcesses("appname%")

'Kill HTA processes
killProcesses("mshta.exe")


'Install new and record exit code
intExitCode = WshShell.Run("msiexec /i """ & strScriptDir & "\removed.msi"" /qn",0, true)

'if install fails exit with exitcode
if intExitCode <> 0 then
		wscript.quit(intExitCode)
end if

'Run New client
WshShell.Run("""" & findACProgramDir & "removed.exe"""),1,false

'Run finished HTA
wshShell.Run ("""" & strScriptDir & "\AfterInstallAlert.hta"""),3,False

'Exit with code
wscript.quit(intExitCode)
March 12th, 2013 10:56pm

Hi,

I appreciate your answer but is not a real solution.

Also u just have to close some ones Outlook at the wrong/right time and u will get some trouble.

I am just really disappointed from MS that this mandatory behavior is still not technically matured...

Free Windows Admin Tool Kit Click here and download it now
March 15th, 2013 8:51am

Stephan, Are you deploying the application to user collection or device collection ?. If it's a device collection the "available application" will definitely be available on software center and behave as we expect it to behave. If you are deploying the application to user collection we are aware that will not be available on software center.

But i believe there is a work around. We can create a device collection for the list of users you have making use of user device affinity and deploy the application to the device collection and that will do..

below is the modified query to create a device collection based on the primary device of user for the list of users we have.

Select SMS_R_SYSTEM.Name,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client, SMS_R_User.UniqueUserName
FROM SMS_R_System
JOIN SMS_UserMachineRelationship ON SMS_R_System.Name=SMS_UserMachineRelationship.MachineResourceName
JOIN SMS_R_User ON SMS_UserMachineRelationship.UniqueUserName=SMS_R_User.UniqueUserName where SMS_R_User.UniqueUserName  in (select SMS_R_User.UniqueUserName from SMS_R_User)
Edit the portion of sub query to manipulate user properties... Hope this would help..
March 15th, 2013 10:39am

I have discovered the same issue as the original poster.   I want to deploy application APPL-RED2.0 to a collection of DEVICES as an Available install.   If any machine in the collection has application APPL-BLUE1.0 - I want APPL-BLUE1.0 to be uninstalled when the user selects to install APPL-RED2.0.W

When I deploy the software to the collection if the device does not have APPL-BLUE1.0 - then APPL-RED2.0 shows as an available install.   If APPL-BLUE1.0 is installed then at the next available maintenance window APPL-RED2.0 will be installed, even thought the user did not select it to be installed.

When going through the deployment wizard "Automatically upgrade any superseded versions of this application" is CHECKED and it is GREYED out so I can not uncheck it.    How do I deploy the software to the collection of devices and not force the installed?  (basicly how the heck to I uncheck it)

Free Windows Admin Tool Kit Click here and download it now
April 16th, 2013 9:20pm

I have another question..what do I do with the old program? do I retire it or remove its deployments? Will this have any effect on the new application and supersedence? 
May 10th, 2013 9:04pm

Have any got any solution to this?

I guess I have to create a script that uninstall the precvious version before installing the new one to get around this. 

It was better with programs :)

Free Windows Admin Tool Kit Click here and download it now
October 22nd, 2014 3:10pm

Guys, the original questions seems to be, how do I just make this available for when they're ready to update? The answer to that is only use "Available". Required will make it happen right when the deadline is reached. The other issue of where the software is found comes down to User or Device collection. Device will be found in Software Center, User will be in the Application Catalog. It sounds like what you're wanting is "Available" then for notification settings, select the first option. You want the user to be notified for everything (new software is available). Don't check the box for automatically upgrading, otherwise it will tell the client to run the upgrade now since the previous version was found on the system.
  • Proposed as answer by Cliff Steinman Friday, August 21, 2015 6:37 PM
August 21st, 2015 4:41pm

Guys, the original questions seems to be, how do I just make this available for when they're ready to update? The answer to that is only use "Available". Required will make it happen right when the deadline is reached. The other issue of where the software is found comes down to User or Device collection. Device will be found in Software Center, User will be in the Application Catalog. It sounds like what you're wanting is "Available" then for notification settings, select the first option. You want the user to be notified for everything (new software is available). Don't check the box for automatically upgrading, otherwise it will tell the client to run the upgrade now since the previous version was found on the system.
Free Windows Admin Tool Kit Click here and download it now
August 22nd, 2015 12:36pm

When I deploy the software to the collection if the device does not have APPL-BLUE1.0 - then APPL-RED2.0 shows as an available install.   If APPL-BLUE1.0 is installed then at the next available maintenance window APPL-RED2.0 will be installed, even thought the user did not select it to be installed.

I've noticed the same thing. I've made a new deployment "available", superseding the older application, to allow our users to "opt-in" to the testing phase before rolling out to everyone, and like you I've also found that sometimes people would automatically get the new version without opting in; installing overnight. This certainly must be a bug? I use SCCM to manage ~200 computers and it's scary enough. How would anyone have enough confidence in this product to use for 1000 or more machines?
August 24th, 2015 2:35am

I have a case open with MS right now, we just talked today. I'll keep you updated. Also check out this article, maybe it's close? Could have to do with putting it in a task sequence, but I'll give you the particulars when I have more concrete data.
Free Windows Admin Tool Kit Click here and download it now
August 25th, 2015 2:32pm

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics