ConfigMgr Edge Chromium Unmatched Exit Code (1) Execution Failed | SCCM

10

Let’s try to fix the edge chromium deployment error. The following is the error Edge Chromium Unmatched Exit Code (1) Is Considered An Execution Failure. The production version of the Microsoft Edge browser got released on 15th January 2020.

I used the default option (using \Software Library\Overview\Microsoft Edge Management) in SCCM to deploy the Edge Chromium version. Microsoft’s recommendation is to use the edge stable version chromium-browser as the default browser.

Edge Chromium Stable Channel Version – 56EB18F8-B008-4CBD-B6D2-8C97FE7E9062

NOTE! – An alternate method of installing Microsoft Edge Chromium – Deploy Microsoft Edge Chromium Browser Using SCCM ConfigMgr. You might need to use group policy to define the channel and all the other configuration of Edge Chromium.

SCCM - ConfigMgr - Edge Chromium Unmatched Exit Code (1) Is Considered An Execution Failed
SCCM – ConfigMgr – Edge Chromium Unmatched Exit Code (1) Is Considered An Execution Failed

Problem Statement

I got an error when deploying the Edge Chromium version of the browser to Windows 10 devices. The software center showed a failed error message.

SCCM - ConfigMgr - Edge Chromium Unmatched Exit Code (1) Is Considered An Execution Failed
SCCM – ConfigMgr – Edge Chromium Unmatched Exit Code (1) Is Considered An Execution Failed
Unable to make changes to your software - There was a problem applying changes to the software. You can try again. Or, of the problem continues, the information that is shown in the following section can assist your help desk in troubleshooting.
Click OK to return to Software Center
More Information
0x1(1)
  • Checked AppEnforce.log log file from C:\Windows\CCM\Logs to understand what is the issue with the deployment.
SCCM - ConfigMgr - Edge Chromium Unmatched Exit Code (1) Is Considered An Execution Failed
SCCM – ConfigMgr – Edge Chromium Unmatched Exit Code (1) Is Considered An Execution Failed
  • Let’s check the error logs from AppEnforce.log file.
Command line: powershell -File ".\Install-Edge.ps1" -MSIName "MicrosoftEdgeEnterpriseX64.msi" -ChannelID "{56eb18f8-b008-4cbd-b6d2-8c97fe7e9062}"
Allow user interaction: No
UI mode: 1
User token: not null
Session Id: 4294967295
Content path: C:\windows\ccmcache\8
Working directory:
Prepared working directory: C:\windows\ccmcache\8
Found executable file powershell with complete path C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe
Prepared command line: "C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe" -File ".\Install-Edge.ps1" -MSIName "MicrosoftEdgeEnterpriseX64.msi" -ChannelID "{56eb18f8-b008-4cbd-b6d2-8c97fe7e9062}"
Executing Command line: "C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe" -File ".\Install-Edge.ps1" -MSIName "MicrosoftEdgeEnterpriseX64.msi" -ChannelID "{56eb18f8-b008-4cbd-b6d2-8c97fe7e9062}" with system context
Looking for exit code 1 in exit codes table...
Unmatched exit code (1) is considered an execution failure.

Troubleshooting Edge Chromium

Let’s try to troubleshoot Microsoft edge chromium deployment failure related issues.

Manual Try

I tried to run the script manually and find more details of the failure of edge deployment. I got the following error “cannot be loaded because running scripts is disabled on this system.”

This error translates to PowerShell execution policy is set to undefined!

PS C:\Windows\ccmcache\8> .\Install-Edge.ps1
.\Install-Edge.ps1 : File C:\Windows\ccmcache\8\Install-Edge.ps1 cannot be loaded because running scripts is disabled on this system. 
For more information, see about_Execution_Policies at https:/go.microsoft.com/fwlink/?LinkID=135170.
At line:1 char:1
.\Install-Edge.ps1
~~~~~~ CategoryInfo : SecurityError: (:) [], PSSecurityException
FullyQualifiedErrorId : UnauthorizedAccess

Client Policy – Computer Agent

I checked and confirmed that the client setting – Computer agent – PowerShell Execution Policy is set to All Signed.

SCCM - ConfigMgr - Edge Chromium Unmatched Exit Code (1) Is Considered An Execution Failed
SCCM – ConfigMgr – Edge Chromium Unmatched Exit Code (1) Is Considered An Execution Failed

Edge Deployment Script is Signed

Make sure that the edge chromium deployment script is signed.

SCCM - ConfigMgr - Edge Chromium Unmatched Exit Code (1) Is Considered An Execution Failed
SCCM – ConfigMgr – Edge Chromium Unmatched Exit Code (1) Is Considered An Execution Failed

Client Setting Policy – Not Applied

Does it seem the SCCM client setting PowerShell execution policy is not getting applied on Windows 10 client?

The policy still shows as undefined even though I set the PowerShell execution policy as Signed.

>> Get-ExecutionPolicy -List
Scope ExecutionPolicy ----- ---------------
MachinePolicy Undefined
UserPolicy Undefined
Process Undefined
CurrentUser Undefined
LocalMachine Undefined
SCCM - ConfigMgr - Edge Chromium Unmatched Exit Code (1) Is Considered An Execution Failed
SCCM – ConfigMgr – Edge Chromium Unmatched Exit Code (1) Is Considered An Execution Failed

Update Script

  • Added a new line to the Microsoft Edge Chromium browser script called Install-Edge.ps1 and saved.
  • It didn’t help to fix the issue.
ConfigMgr Edge Chromium Unmatched Exit Code (1) Execution Failed | SCCM 1

Update Content

  • Redistribute the content of the edge application.
  • Navigate to \Software Library\Overview\Application Management\Applications
  • Click on Microsoft Edge – Deployment Types Edge X64 Default Deployment Type.
  • Right-Click and Select Update Content.
ConfigMgr Edge Chromium Unmatched Exit Code (1) Execution Failed | SCCM 2
SCCM – ConfigMgr – Edge Chromium Unmatched Exit Code (1) Is Considered An Execution Failed

Changed Command Line

  • Navigate to \Software Library\Overview\Application Management\Applications.
  • Select the properties of the deployment – Edge X64 Default Deployment Type.
  • Click on the Programs tab and change the command (installation program) as given below.
  • Tried to add PowerShell execution policy to AllSigned and Bypass. However, it’s didn’t work!
powershell -File ".\Install-Edge.ps1" -ExecutionPolicy AllSigned -MSIName "MicrosoftEdgeEnterpriseX64.msi" -ChannelID "{56eb18f8-b008-4cbd-b6d2-8c97fe7e9062}" -DoAutoUpdate "False"
powershell -File ".\Install-Edge.ps1" -ExecutionPolicy Bypass -MSIName "MicrosoftEdgeEnterpriseX64.msi" -ChannelID "{56eb18f8-b008-4cbd-b6d2-8c97fe7e9062}" -DoAutoUpdate "False"
SCCM - ConfigMgr - Edge Chromium Unmatched Exit Code (1) Is Considered An Execution Failed
SCCM – ConfigMgr – Edge Chromium Unmatched Exit Code (1) Is Considered An Execution Failed

Failed WaitForRunningProcess failed Error 0x87d00213

Let’s check the steps which I performed to fix the issue. This should be treated as a workaround solution. Ideally, the client setting should take care of the PowerShell execution policy.

PowerShell Script to Enable Execution Policy

  • Create a script to change the PowerShell Policy (More detailed guide here).
    • Set-ExecutionPolicy AllSigned -Force
  • Run the script against a device collection as mentioned in the above.
Edge Chromium Unmatched Exit Code (1)
Edge Chromium Unmatched Exit Code (1)

Windows 10 Client – Results

  • Run the following PowerShell command to check the results:
    • Get-ExecutionPolicy -List
  • Check the following Scope Execution Policy below.
ConfigMgr Edge Chromium Unmatched Exit Code (1) Execution Failed | SCCM 3

Re-Run Microsoft Edge Application

  • Re-run Microsoft Edge Application from Software Center.
  • Check the log AppEnforce.log
Executing Command line: "C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe" -File ".\Install-Edge.ps1" -MSIName "MicrosoftEdgeEnterpriseX64.msi" -ChannelID "{56eb18f8-b008-4cbd-b6d2-8c97fe7e9062}" -DoAutoUpdate "False" with user context
  • The deployment failed again.
ConfigMgr Edge Chromium Unmatched Exit Code (1) Execution Failed | SCCM 4

Failed Again

  • Check the AppEnforce.log to get more details on the failure again.
Waiting for process 1984 to finish. Timeout = 30 minutes.
Exceeded timeout of 30 minutes while waiting for process 1984 to finish.
WaitForRunningProcess failed. Error 0x87d00213.
CScriptHandler::CompleteEnforcement failed with 0x87d00213
CAppProvider::CompleteEnforcement failed with error 0x87d00213
++++++ Failed to enforce app. Error 0x87d00213. ++++++
ConfigMgr Edge Chromium Unmatched Exit Code (1) Execution Failed | SCCM 5

Continue…. Unmatched Exit Code (1)

I’m still trying to find out the real issue here. I couldn’t reproduce the issue when I executed the command manually on the device.

ConfigMgr Edge Chromium Unmatched Exit Code (1) Execution Failed | SCCM 6

Resources

10 COMMENTS

  1. Anoop Sir,

    I tried this one and working

    powershell -ExecutionPolicy Bypass -File “.\Install-Edge.ps1” -ExecutionPolicy AllSigned -MSIName “MicrosoftEdgeEnterpriseX64.msi” -ChannelID “{56eb18f8-b008-4cbd-b6d2-8c97fe7e9062}” -DoAutoUpdate “False”

  2. It works for me from SCCM with:
    powershell -File “.\Install-Edge.ps1” -ExecutionPolicy Bypass -MSIName “MicrosoftEdgeEnterpriseX64.msi” -ChannelID “{56eb18f8-b008-4cbd-b6d2-8c97fe7e9062}” -DoAutoUpdate “False”

  3. Yes. Getting rid of the parameter -DoAutoUpdate form the commandline does the Job. When you are looking into the Script there ist no Paramter like that:

    param
    (
    [parameter(Mandatory=$true)]
    [ValidateNotNullOrEmpty()]$MSIName,

    [parameter(Mandatory=$true)]
    [ValidateNotNullOrEmpty()]$ChannelID
    )

    # Registry value name is in the format “Update where ChannelID is the GUID

    Does Micro$oft event Test things bevor rolling out to Production?!

  4. I use a template PS script for installing applications. In order to get this script to work I borrowed from that script. I believe the final issue was that the install line in the original Edge script could not find the MSI file. With my additions to the script and the execution policy bypass as indicated above, it works as intended.

    This is what I added:

    # assert location of installer
    $installerPath = $PSScriptRoot + “\” + $MSIName
    # Log file name
    $msiDescription = ‘Microsoft_Edge’
    # build log file path
    $logFile = $env:SystemRoot + ‘\PackageLogs\’ + $msiDescription + ‘.log’
    # List of arguments
    $argList = ‘/I ‘ + “””$installerPath””” + ‘ /qn /L* ‘ + “””$logFile”””
    # Magic happens here
    Start-Process msiexec.exe -ArgumentList $argList -Wait

LEAVE A REPLY

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.