none
Microsoft installing programs in AppData and not Program Files? RRS feed

  • Question

  • Why is it recently Microsoft have decided that program files is no longer a valid location to install there own applications.

    For example 
    Teams for Business and Teams gets installed under C:\Users\%username%\AppData\Local\Microsoft\Teams

    Why is this?

    As your aware if you try and get SCCM to detect %username% it dose not use the currently loged in user but the service account that installed the software so it will never detect it?

    can the next version of SCCM please add a variable some thing like %currrentuser% so that the applications can be detect far easier? or just install all programs in program files?


    Matthew John Earley BSc (hons) || www.o0MattE0o.tk || XTREME UK

    Thursday, October 10, 2019 2:15 PM

All replies

  • First you should submit you ideas to uservoice. https://configurationmanager.uservoice.com/forums/300492-ideas

    Secondly this is issue is related to locked down computer. If the user isn't an admin the software doesn't install within program files. Firefox is an example. Currently you can't inventory this type of software without 3rd party add-ons. 


    Garth Jones

    Blog: https://www.enhansoft.com/blog Old Blog: https://sccmug.ca/

    Twitter: @GarthMJ Book: System Center Configuration Manager Reporting Unleashed

    Thursday, October 10, 2019 2:22 PM
  • Thanks I post on uservoice.

    unfortunately though this is not the case for starters the SCCM service account that dose the installation is a localadmin and also I'm a local admin on my PC so its not that :(

    Matthew John Earley BSc (hons) || www.o0MattE0o.tk || XTREME UK

    Thursday, October 10, 2019 2:35 PM
  • It depends, did you install it as a user or an admin? Also consider that the it is the installer itself that does this not SCCM. 

    Garth Jones

    Blog: https://www.enhansoft.com/blog Old Blog: https://sccmug.ca/

    Twitter: @GarthMJ Book: System Center Configuration Manager Reporting Unleashed

    Thursday, October 10, 2019 2:43 PM
  • I believe it is the installer but It would be nice if Microsoft just never done this :( or like I said in my original post have a way of SCCM detecting AppData of the currently loged in user.

    Matthew John Earley BSc (hons) || www.o0MattE0o.tk || XTREME UK

    Thursday, October 10, 2019 2:47 PM
  • Microsoft provide a Windows Installer for Teams see https://docs.microsoft.com/en-us/microsoftteams/msi-deployment that installs to the Program Files directory.

    However if you stick with per-user installation you could use scripted detection method e.g.

    if(Test-Path "$env:LOCALAPPDATA\Microsoft\Teams\current\Teams.exe"){

        return $true

    }

    Thursday, October 10, 2019 2:48 PM
  • Why is it recently Microsoft have decided that program files is no longer a valid location to install there own applications.

    This is not an accurate statement. Program Files is and always has been the default location for *per-system* installed applications. AppData is and always have been the default location for *per-user* installed applications.

    I believe it is the installer but It would be nice if Microsoft just never done this

    As noted, this has nothing to do with ConfigMgr. This is a design choice that the Teams team made between a per-user and per-system installation.

    or like I said in my original post have a way of SCCM detecting AppData of the currently loged in user.

    It does, if you correctly configure the application (or package) to install as the currently logged on user when performing a per-user installation. That's the main purpose of doing this.


    Jason | https://home.configmgrftw.com | @jasonsandys

    Thursday, October 10, 2019 3:33 PM
  • I found out the reason Microsoft response on another site (dont quote me word to word)

    Microsoft wants users to have the latest version of teams and one drive so they install in in app data to bypass Enterprise admins security as AppData dose not require admin permissions :( 


    if this is the case then SCCM Current branch needs to change to make it easy to detect the currently logged in user and not the SCCM Service account that dose the installation... do Microsoft Teams "pun intended" not work together, I could recommend a tool that would help with this :)

    Matthew John Earley BSc (hons) || www.o0MattE0o.tk || XTREME UK

    Friday, October 11, 2019 9:14 AM
  • See my answer above. It already does this when you configure your deployment correctly.

    Jason | https://home.configmgrftw.com | @jasonsandys

    Friday, October 11, 2019 3:52 PM
  • I'm following the installation instructions that Microsoft state for silent install for the MSI package they have supplied and can not see the option for installing as currently logged in user.

    For now I found that the EXE version installs "Teams Machine-Wide Installer" which can be detected as it installs with a WMI code that can be detected, not perfect though.


    Matthew John Earley BSc (hons) || www.o0MattE0o.tk || XTREME UK

    Friday, October 11, 2019 4:20 PM
  • Without knowing what instructions that is, I can't comment on them; however, it doesn't change the fact that Applications in ConfigMgr can be configured to install for the current user explicitly or for the system -- all you need to do is create it correctly per the type of desired install or change it on the existing Application.

    Jason | https://home.configmgrftw.com | @jasonsandys

    Friday, October 11, 2019 4:23 PM
  • So you just saying to rebuild the Microsoft Teams MSI Package :( dont think thats going to happen :( 

    Matthew John Earley BSc (hons) || www.o0MattE0o.tk || XTREME UK

    Friday, October 11, 2019 4:30 PM
  • No, not at all. I'm saying choose the correct option **in ConfigMgr** when creating the ConfigMgr Application object.

    Jason | https://home.configmgrftw.com | @jasonsandys

    Friday, October 11, 2019 4:40 PM