Jump to content


anyweb

using SCCM 2012 beta 2 in a LAB - Part 4. Application Installation

Recommended Posts

In Part 1. of this series we Installed vNext, in Part 2 we started to configure it. In Part 3, we configed Beta 2 some more by enabling Active Directory discovery methods, adding some site system roles, configuring the computer client agent and client push settings and finally doing a manual client installation to verify it all worked, now we will look at Application Installation and the Software Catalog and Software Center features of SCCM 2012.

 

Application Management documentation is available already on Technet however not all the content is complete so some blank parts may appear - http://technet.micro...y/gg699373.aspx

 

Heres a summary (from Technet) of whats new in Application Management in ConfigMgr 2012.

 

Applications are new in Configuration Manager 2012 and have the following characteristics:

 

  • Applications contain the files and information necessary to deploy a software package to a computer or a mobile device. Applications contain multiple deployment types that contain the files and commands necessary to install the software. For example, an application could contain deployment types for a local installation of a software package, a virtual application package or a version of the application for mobile devices.
  • Requirement rules define conditions that specify how an application is deployed to client devices. For example, you can specify that the application should not be installed if the destination computer has less than 2GB RAM or you could specify that a virtual application deployment type is installed when the destination computer is not the primary device of the user.
  • Global conditions are similar to requirement rules but can be reused with any deployment type.
  • User device affinity allows you to associate a user with specified devices. This allows you to deploy software to a user rather than a device. For example, you could deploy an application so that it only installs on the primary device of the user. On devices that are not the primary device of the user, you could deploy a virtual application that is removed when the user logs out.
  • Deployments are used to distribute applications. A deployment can have an action which specifies whether to install or uninstall the application and a purpose which specifies whether the application must be installed or whether the user can choose to install it.
  • Configuration Manager 2012 can use detection methods to determine if a deployment type has already been installed on a device by using product information, or a script.
  • Application management supports the new monitoring features in Configuration Manager 2012. The status of an application deployment can be monitored directly in the Configuration Manager console.
  • Packages and programs from Configuration Manager 2007 are supported in Configuration Manager 2012 and can use some of the new deployment and monitoring features.
  • Software center is a new client interface that allows users to request and install applications, control some client functionality and to access the application catalog which contains details about all available applications.

Planning for Application Management in Configuration Manager<p class="MTPS_CollapsibleRegion">

 

 

The following topics help you plan for application management in System Center 2012 Configuration Manager:

 

 

Perform the following on the vNext server as SMSadmin

 

We want to verify that our Software Catalog is showing correctly so on the vNext server, start Internet Explorer and browse to http://vnext/CMSoftwareCatalog replace vnext with your server name, you should see the following

 

Software Catalog empty.png

 

If it does not appear like so verify the address is the same as the one you configured in Step 4 of Part 3.

 

As you can see the Software Catalog allows a user to browse available Applications (remember Applications, not Packages, Packages won't be listed here..) so lets get started with adding an application.

 

 

Step 1. Adding an Application

 

We will download a simple MSI application called XML Notepad 2007. Save the application in your package sources share (I have shared a root folder on D:\ called Sources with sub folders within, one is called Applications). Copy the downloaded XML Notepad 2007 MSI file to a subdirectory of your sources\applications share just like I have done in the screenshot below.

 

sources applications.png

 

Open the ConfigMgr console and browse to Software Library, click on Appliction Management and finally click on Applications. In the Ribbon (top left) click on Create Application,

 

create application.png

 

the create application wizard appears, browse to the UNC of where we copied our XML 2007 application and select the MSI file (\\vnext\sources\applications\xml notepad 2007\xmlnotepad.msi)

 

msi source.png

 

click next, review the Import Information screen, click next

 

import inf.png

 

the next screen needs some input, fill in some details to make it meaningful and change the drop down menu to Install for System (default is Install for User)

 

install for system.png

 

Click next at the summary and next again to confirm, click close to exit the wizard

 

to exit the wizard.png

 

 

 

Step 2. Distribute Content

 

Now that we've created our first application, let's distribute it to our DP, click on our listed application and in the ribbon above, click on Distribute Content (you can right click the application and select the same option from the choices listed).

 

distribute content.png

 

The distribute content wizard appears, click next

 

dp wizard.png

 

review the content to distribute

 

review.png

 

and for the next screen click on the drop down menu for Content destination, select Distribution Point

 

add dp.png

 

select our vnext DP and click ok

 

vnext dp.png

 

click next

 

vnext dp next.png

 

review the summary and click next, then you'll see the completion page

 

dp done.png

 

click close

 

In the console, select the line above your application, click it and drag up so you can see more info about your application

 

drag up.png

 

In Distribution Point Status, our application should be listed as installed, if not click on Refresh in the Ribbon above.

 

dp installed.png

Share this post


Link to post
Share on other sites


Step 3 Deploy your application

 

Select your application and in the ribbon, click on Deploy

 

deploy.png

 

when the wizard appears click on browse beside Collection, and choose Device Collections and then All Systems

 

Note: We are doing this to show what works (in relation to applications showing up in the Software Catalog), and what doesn't.

 

all systems.png

 

click ok and then click next (notice our distribution point we added above is listed)

 

dp listed.png

 

leave the Deployment Settings as they are (we want it to be optional so Available is the choice we need)

 

install.png

 

leave all the remaining screens as they are (next), below is scheduling

 

scheduling.png

 

the User Experience

 

hide notification.png

 

you can configure alerts based on failure or success

 

alerts.png

 

review the summary then proceed to the completion screen, click close.

 

completion.png

 

after a while you should see a new icon appear in the system tray, notifying you of new software available

 

new software available.png

 

double click on it and it will open the Software Center, if you want a nice summary of what the software center does (it replaces RAP, remember RAP ?) then look here (thanks Trevor)

 

software center.png

 

If you open the Software Catalog, you will not see your application as we targetted it to All Systems (device collections).

 

So let's create a new deployment using our guide above, except on the first step, lets choose User Collections and All Users as the target, click next to proceed through the wizard..

 

user collections.png

 

Open the Software Catalog, and refresh the page, notice anything smile.gif

 

software catalog with software.png

 

Click on Install to install the application

 

install software.png

 

the software installs...

 

software starts installing.png

 

job done !

 

job done.png

 

Congratulations, you've installed your first application using SCCM 2012 beta 2 and the Software Catalog.

  • Like 1

Share this post


Link to post
Share on other sites

Wonderful tutorial.

 

Was able to create,distribute and deploy xml notepad and 7-zip to all systems and all users. The apps got installed successfully.

 

My question - How to get rid of the message "New Software is available" on the task bar (a small icon). When, I open the small icon - Open Software Center opens up and it show installation status, installed apps, date and time.

 

Appreciate, if you guys can help me.

 

By the way I am in no hurry. This is a test lab, I am working on with the hope of learning sccm 2012. Have completed part 1 to part 6. Few more parts to go.

 

Tks / Ram

Share this post


Link to post
Share on other sites

Wonderful tutorial.

 

Was able to create,distribute and deploy xml notepad and 7-zip to all systems and all users. The apps got installed successfully.

 

My question - How to get rid of the message "New Software is available" on the task bar (a small icon). When, I open the small icon - Open Software Center opens up and it show installation status, installed apps, date and time.

 

Appreciate, if you guys can help me.

 

By the way I am in no hurry. This is a test lab, I am working on with the hope of learning sccm 2012. Have completed part 1 to part 6. Few more parts to go.

 

Tks / Ram

 

Was wondering the same thing, but I THINK that only deploying to users instead of machines did the trick!

BTW! How does that "my software requests" thingy work?

Is it possible to enable that in Beta 2 ?

Share this post


Link to post
Share on other sites

BTW! How does that "my software requests" thingy work?

Is it possible to enable that in Beta 2 ?

That's for Application which are Deployment with the setting Require administrator approval if users request this application checked.

Share this post


Link to post
Share on other sites

Hi!

 

I have everything setup in my environment. Add users to my AD group, getting the group to SCCM 2012 and query it to a collection. And the application ends up on the users Software center web site. :-)

 

I have one thought. When creating applications, and you add them to a categorize? Let say I create a few, and the a few applications to each. Can I use them from within a Task Seqeunce? Or whats the plans with this?

 

Regards,

Mikael

Share this post


Link to post
Share on other sites

adding categories makes it easier for the end user to find the app they want in the Software Catalog, it's not intended to be used during the task sequence

Share this post


Link to post
Share on other sites

Ok. I see. Thanks for the quick answer.

 

So, if you dont wanna be using the MDT 2012 and all the roles - How will you do this in SCCM 2012?

 

I know a few ways of doing it, but maybe in the RTM of SCCM 2012..

 

Mikael

Share this post


Link to post
Share on other sites

Piece of cake creating applications from an msi, but if we use exe files?

Is it only possible to create those via "packages" instead of "applications".

Also, when creating from exefiles, the "require administrator approval..." is grayed out. Why is that?

 

and last:

when deploying (i tried visio 2010, which is an exe) on a client, the installations stops and complaints that the user is not an adminsitrator??

when deploying applications that are MSI's it works perfect. Why ist hat?

Share this post


Link to post
Share on other sites
also, when creating from exefiles, the "require administrator approval..." is grayed out. Why is that?

because deploying apps using Applications (msi..) is the way to go (the way of the future) and the Microsoft recommended way, therefore if you want the goodies (the benefits) stop using the old method (packages/exe)

Share this post


Link to post
Share on other sites

because deploying apps using Applications (msi..) is the way to go (the way of the future) and the Microsoft recommended way, therefore if you want the goodies (the benefits) stop using the old method (packages/exe)

 

Understand that! everything would so easy with just msi files.

I followed the guide for Office 2010 (but I took Visio instead) and it worked perfectly.

But I was also trying out the same for Lync 2010, but it didnt go well..

Could someone give me some guideance ?

Share this post


Link to post
Share on other sites

It links to this article http://technet.microsoft.com/en-us/library/gg425733.aspx which states "You can extract the .msi file by running the client installation executable on a supported Windows client, which creates the Lync.msi file in %Program Files%\OCSetup\Lync.msi or %Program Files(x86)%\OCSetup\Lync.msi. For details and additional required steps, see Microsoft Knowledge Base article 2477965, “The installation of Lync 2010 by using Windows Installer (MSI) fails,” at http://go.microsoft.com/fwlink/?LinkId=208249."

Share this post


Link to post
Share on other sites

It links to this article http://technet.micro...y/gg425733.aspx which states "You can extract the .msi file by running the client installation executable on a supported Windows client, which creates the Lync.msi file in %Program Files%\OCSetup\Lync.msi or %Program Files(x86)%\OCSetup\Lync.msi. For details and additional required steps, see Microsoft Knowledge Base article 2477965, “The installation of Lync 2010 by using Windows Installer (MSI) fails,” at http://go.microsoft.com/fwlink/?LinkId=208249."

 

Exactly, and the KB says that a policy must be implemented by GPO.

I.E reg keys.

 

That's not the way I wanna do this.

Can't start fiddling around with gpo's just to deploy a single application.

Share this post


Link to post
Share on other sites

It can be done by script also... It's just a regedit action..

 

Yeah but if I do this once, then I would guess that I would need to do it again with another application. And then the the wheel starts spinning.

Don't think Microsoft intended to deploy their own exe's in this way.

Share this post


Link to post
Share on other sites

Am i the only one where uninstall not are working on the client side?

 

Or are it a beta bug :)

 

I got this in my AppProvider.log:

 

<![LOG[ App enforcement environment:

Context: Machine

Command line: msiexec /i "XmlNotepad.msi"

Allow user interaction: No

UI mode: 0

User token: null

Session Id: 1

Content path: C:\Windows\ccmcache\Content_7ca38eaa-6a88-4471-b577-349e8b16a005.1.System

Working directory: ]LOG]!><time="09:00:20.226-120" date="09-08-2011" component="AppProvider" context="" type="1" thread="5716" file="appcontext.cpp:64">

<![LOG[ Prepared working directory: C:\Windows\ccmcache\Content_7ca38eaa-6a88-4471-b577-349e8b16a005.1.System]LOG]!><time="09:00:20.227-120" date="09-08-2011" component="AppProvider" context="" type="1" thread="5716" file="appcontext.cpp:179">

<![LOG[Found executable file msiexec with complete path C:\Windows\system32\msiexec.exe]LOG]!><time="09:00:20.229-120" date="09-08-2011" component="AppProvider" context="" type="1" thread="5716" file="executility.cpp:187">

<![LOG[ Prepared command line: "C:\Windows\system32\msiexec.exe" /i "XmlNotepad.msi" /qn]LOG]!><time="09:00:20.230-120" date="09-08-2011" component="AppProvider" context="" type="1" thread="5716" file="appcontext.cpp:255">

<![LOG[ Executing Command line: "C:\Windows\system32\msiexec.exe" /i "XmlNotepad.msi" /qn with user context]LOG]!><time="09:00:20.230-120" date="09-08-2011" component="AppProvider" context="" type="1" thread="5716" file="appexcnlib.cpp:197">

<![LOG[ Working directory C:\Windows\ccmcache\Content_7ca38eaa-6a88-4471-b577-349e8b16a005.1.System]LOG]!><time="09:00:20.231-120" date="09-08-2011" component="AppProvider" context="" type="1" thread="5716" file="appexcnlib.cpp:209">

<![LOG[ Post install behavior is BasedOnExitCode]LOG]!><time="09:00:20.234-120" date="09-08-2011" component="AppProvider" context="" type="1" thread="5716" file="appcommon.cpp:1054">

<![LOG[ Waiting for process 5352 to finish. Timeout = 30 minutes.]LOG]!><time="09:00:20.238-120" date="09-08-2011" component="AppProvider" context="" type="1" thread="5716" file="appexcnlib.cpp:1643">

<![LOG[ Process 5352 terminated with exitcode: 0]LOG]!><time="09:00:20.597-120" date="09-08-2011" component="AppProvider" context="" type="1" thread="5716" file="appexcnlib.cpp:1652">

<![LOG[ Looking for exit code 0 in exit codes table...]LOG]!><time="09:00:20.598-120" date="09-08-2011" component="AppProvider" context="" type="1" thread="5716" file="appexcnlib.cpp:307">

<![LOG[ Matched exit code 0 to a Success entry in exit codes table.]LOG]!><time="09:00:20.598-120" date="09-08-2011" component="AppProvider" context="" type="1" thread="5716" file="appexcnlib.cpp:386">

<![LOG[ ActionType - Install will use Content Id: Content_7ca38eaa-6a88-4471-b577-349e8b16a005 + Content Version: 1 for AppDT "XML Notepad 2007 - Windows Installer (Native)" [scopeId_54410AB1-899E-4CA7-B3B6-E4E15E7ED427/DeploymentType_6fd9b1f3-5ff4-4e16-bb33-68c498738f1e], Revision - 2]LOG]!><time="09:00:20.640-120" date="09-08-2011" component="AppProvider" context="" type="1" thread="6808" file="appprovider.cpp:1434">

<![LOG[++++++ App enforcement completed (4 seconds) for App DT "XML Notepad 2007 - Windows Installer (Native)" [scopeId_54410AB1-899E-4CA7-B3B6-E4E15E7ED427/DeploymentType_6fd9b1f3-5ff4-4e16-bb33-68c498738f1e], Revision: 2, User SID: ] ++++++]LOG]!><time="09:00:20.653-120" date="09-08-2011" component="AppProvider" context="" type="1" thread="5716" file="appprovider.cpp:2361">

<![LOG[Entering ExecQueryAsync for query "select * from CCM_AppDeliveryType where (AppDeliveryTypeId = "ScopeId_54410AB1-899E-4CA7-B3B6-E4E15E7ED427/DeploymentType_6fd9b1f3-5ff4-4e16-bb33-68c498738f1e" AND Revision = 2)"]LOG]!><time="09:00:35.774-120" date="09-08-2011" component="AppProvider" context="" type="1" thread="5716" file="appprovider.cpp:394">

<![LOG[ Performing detection of app deployment type XML Notepad 2007 - Windows Installer (Native)(ScopeId_54410AB1-899E-4CA7-B3B6-E4E15E7ED427/DeploymentType_6fd9b1f3-5ff4-4e16-bb33-68c498738f1e, revision 2) for system.]LOG]!><time="09:00:35.781-120" date="09-08-2011" component="AppProvider" context="" type="1" thread="5716" file="appprovider.cpp:2089">

<![LOG[+++ Application not discovered. [AppDT Id: ScopeId_54410AB1-899E-4CA7-B3B6-E4E15E7ED427/DeploymentType_6fd9b1f3-5ff4-4e16-bb33-68c498738f1e, Revision: 2]]LOG]!><time="09:00:40.277-120" date="09-08-2011" component="AppProvider" context="" type="1" thread="5716" file="localapphandler.cpp:291">

<![LOG[+++ Did not detect app deployment type XML Notepad 2007 - Windows Installer (Native)(ScopeId_54410AB1-899E-4CA7-B3B6-E4E15E7ED427/DeploymentType_6fd9b1f3-5ff4-4e16-bb33-68c498738f1e, revision 2) for system.]LOG]!><time="09:00:40.278-120" date="09-08-2011" component="AppProvider" context="" type="1" thread="5716" file="appprovider.cpp:502">

Share this post


Link to post
Share on other sites

Hi Niall,

 

Firstly, thank you for taking the time to create these guides, they've been really useful given that the current CM2012 documentation is sorely lacking.

 

I have a quick question about one of the settings for application deployment. I've tried various permutations of the setting but it seems to have no affect!

 

During the 'Create Application' stage (Step 1), we select 'Install for user or system = Install for system'.

Then, during the deployment creation phase (Step 3) we choose 'Install for system' the first time (and then advertise to device collections) and 'Install for user' the second time (and then advertise to user collections).

 

so my question is, what's the purpose of the initial setting 'Install for user or system = Install for system' when creating the application?

 

Does it impact the installation in any way? Or is it used when defining rules about what to deploy to where? (primary device for example).

 

Also, once I've created a deployment, I can't go back and change it, for example from Available to Required. is this correct?

 

Thanks for the help!

Dan.

Share this post


Link to post
Share on other sites

hi Dan,

thanks for the kind words !

 

i think the Technet documentation is actually fantastic but it's not all there obviously,

 

however in relation to what you are asking see below (from Technet, how to create an Application)

  • Install for user or System – Specify whether the applications deployment type will be installed for the currently logged on user or for all users. You can also specify that the deployment type will be installed for all users if it is deployed to a device or to a user only if it is deployed to a user.

Configmgr 2012 application installation is all about the User so in the examples above we are just experimenting with the different options available to us,

 

 

as regards Deployments yes some settings are not changeable after they are created (like most of the deployment settings, some of the general settings like collection/software), perhaps this might change in future releases i don't know

Share this post


Link to post
Share on other sites

Hi Niall,

Thanks for the quick response.

 

I agree the technet docs are pretty good if I'm honest, but got very frustrated with the amount of pages saying 'Placeholder..' when it was specifically the bit I wanted to read! lol.

 

Anyway with regards to the User/System settings, I had read the page you referenced, but hadn't really put the two together, as they don't really marry up. I guess with hindsight they kind of do..

 

So

'Install for System' = All users

'Install for user' = Current User, so therefore can only be used A) When someone's logged on and/or B)Initiates the install via the software catalog.

 

making the third option 'Install for System if resource is device; otherwise install as user' a bit confusing as the documentation says: 'The term “device” in Configuration Manager 2012 applies to a computer or a mobile device such as a Windows Mobile Phone '.. so when would the app be installed as a user?

 

I'm really enjoying working through all the new features, some of them are a real god send! (Collection management for example), but I'm just struggling with the new Application delivery concepts. I can see the potential for sure, with deployment types, conditions, dependancies and supersedence all giving control, but also a potential troubleshooting nightmare..

 

Thanks again for your help. Keep up the great work.

Dan.

Share this post


Link to post
Share on other sites

well it's a bit confusing but we'll get used to it soon enough, to add to this, when you get to Deploying applications in a Task Sequence (for OSD) you'll see that the application will need a deployment type for this application and that the deployment type should be set to Install for System or Install for System if resource is device; otherwise install as userotherwise the application will not be able to be added to the Install Applications step

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...