Archive for the ‘Troubleshooting’ Category

Unable to upload Android Line-of-business application in Intune

February 23, 2018 Leave a comment

Recently we ran into an issue with Intune when trying to upload an in-house developed line of business application for Android.

The symptoms seen are rather straightforward : when selecting the .apk file, the details like name, platform, version, etc. are not populated automatically and the OK button remains greyed out. As a result the application cannot be uploaded.


Clearly something is missing, but trying to pinpoint the root cause has turned out to be difficult. The actual requirements that an application must meet are, to my knowledge, not documented. This makes it very hard to determine the cause and provide any further details to the application developer in an attempt to further resolve this.

Getting this resolved (with the help from Microsoft support) was twofold :

First we needed to ensure the manifest included platformBuildVersionCode and platformBuildVersionName:


Still we could not upload the .apk until the developer ran through the following steps:

  • Put the following line in android.enableAapt2=false
  • Restart the Gradle daemon by running ./gradlew –stop from the command line
  • Sync gradle settings

For the non-developer (like me) this does not say much, but at this point the .apk file could successfully be uploaded in Intune.

Hope it helps!



Adding languages for Office 365 update downloads in Configuration Manager only adds the first language

October 13, 2017 Leave a comment

During a recent customer visit I was asked to troubleshoot an issue with Office 365 language specific updates. This blog post outlines my findings and the solution.

The customer is running a Current Branch 1706 environment and needs to support Dutch and French languages for Office 365, next to the default English language. As such he wants to ensure all updates for these three languages are properly downloaded. To achieve this the engineer is following the procedure as documented here.


Let’s first have a look at what is documented the TechNet Docs.

Beginning in Configuration Manager Current Branch 1610, you can add support for Configuration Manager to download updates for any languages that are supported by Office 365, regardless of whether they are supported in Configuration Manager.

The documentation contains a detailed procedure on how to add support to download updates for additional languages. This is done through WMI.

Configuring additional Office 365 update languages is a site-wide setting. After you add the languages using the procedure, all Office 365 updates are downloaded in those languages, as well as the languages that you select on the Language Selection page in the Download Software Updates or Deploy Software Updates wizards.



Initial findings

As the customer did not want to select the additional languages in the Software Updates wizard each month he opted for the site-wide setting and required modifications. As per the outlined procedure the required changes were made in WMI.

Notice in the screenshot below the values are specified exactly as per the screenshot in the TechNet Documentation.


Based on these settings the updates for Dutch and French should be downloaded. English does not have to be specified and is always downloaded. However, when checking the sources in the Software Update Deployment Package, only English and French updates have been provisioned. Dutch is missing.


During a second test the language tags in WMI were switched, so Dutch was first in the list.


After the download completed the Software Update Deployment Package source folder only contains English and Dutch updates. French is missing.


It appears as if only updates for the first language specified are being downloaded.

A few runs later (going through some variants with delimiters etc.) we tested with the following values in WMI


After the download completed we checked the Software Update Deployment Package source folder again – and finally updates for all three languages are properly provisioned.





The screenshot in the TechNet documentation is misleading as the language tags are separated with a comma and a space. Based on our above findings the language tags should be separated with a comma only, the space should be omitted for this to work when specifying multiple languages.

Side note: the TechNet documentation also mentions Use the following procedure on the software update point at the central administration site or stand-alone primary site. This is not correct as the procedure needs to be executed on the site server, not the SUP.

Hope it saves you some troubleshooting time!


ConfigMgr 1706 – BgbServer.log expecting more data from client errors

September 29, 2017 2 comments

After upgrading a Configuration Manager Current Branch environment to 1706 you may notice a lot of Expecting more data from client errors in the BgbServer.log .

This log records the activities of the notification server such as client-server communications and pushing tasks to clients. It also records information about online and task status files generation to be sent to the site server.


Feedback from Microsoft indicates this is related to the client not sending the final packet via TCP channel somehow or when the ccmexec service on the client restarts. The good news is that these events are harmless and are not impacting any functionality.

Logging improvements in future releases should fix this and avoid BgbServer.log from turning red.

Hope it helps!


*** Update 20/10 ***
I logged a case for this with Microsoft (ID 3141726) which changed status to Resolved just now. Expect this to be fixed in the next CB release.

ConfigMgr 1606 – Unable to modify language configuration

September 1, 2016 Leave a comment

When running Configuration Manager current branch 1606 you might run into a situation where you cannot modify the language configuration of a site. The option is simply greyed out, preventing you from adding any client or server languages.


The reason to why this is happening can be found in the ConfigMgrSetupWizard.log (hat tip to fellow MVP Roger Zander for pointing this out). Here we see an entry indicating that setup detected that client piloting is enabled for the site and as a result the modify language configuration option will be disabled.


So if we want to make any language modifications we need to promote the pre-production client to production first. This can be done in the administration workspace in the updates and servicing node.


Once the previous step is completed we can run the Setup Wizard again and in Site Maintenance the modify language configuration option is no longer greyed out. Adding client and server languages is possible.



Conclusion: you cannot change the language settings as long as the pre-production package has not been promoted.

The underlying reason for this is that we cannot apply language pack MSP files for the newer client to an older client version. When in piloting mode the new binaries have been updated everywhere, except for the client folder for production. Adding new client language packs would copy the newer language pack MSP files from cd.latest to the client folder that still has an older client version. These language pack files are not compatible with that older client – and as a result would be deleted.

Hope it helps!


Configuration Manager 1511 – Client hangs on initializing during OSD

March 11, 2016 Leave a comment

A customer that recently upgraded to Configuration Manager 1511 CB ran into an issue with deploying newly captured OS images. The task sequence is hanging on client initialization and fails eventually. Images captured before the upgrade could still be deployed without any issues.

This blog post details how we resolved this.


When deploying an OS image captured using a Build and Capture task sequence in Configuration Manager 1511 the client hangs on the client initialization step. In the smsts.log we see an entry Waiting for the CCMExec service to be fully operational . After that there is one more entry referring to loading TSRES.DLL .




This is a known bug in Configuration Manager 1511 which is logged on Connect (ID 2153746).

Feedback on the connect item indicates this will be fixed in an upcoming update to the Configuration Manager current branch. The workaround for now is to not include the client in the image.

Note : in 1602 Technical Preview this issue has already been fixed.



There is another way to work around this if you do not want to pursue the alternative not to include the client in the image.

For this you would need to modify the Build and Capture task sequence to include two additional steps:

  • Step 1 : run ccmrepair
  • Step 2 : reboot the system
    An example is shown in the screenshot below.


When deploying the newly captured image using the modified task sequence the client will no longer hang on initializing.

Once the next update of Configuraiton Manager CB is implemented in your environment these two steps can be removed again.

Hope it helps!


ConfigMgr R2 SP1 upgrade does not clean up previous Cumulative Update entries in Control Panel > Programs and Features

June 2, 2015 Leave a comment

Hi All,

Just a quick blog post on a small anomaly with Configuration Manager R2 Service Pack 1.


When upgrading an existing Configuration Manager site it seems the Installed Updates entries related to prior Cumulative Updates are not properly cleaned up. After upgrading a site the end result for Installed Updates looks like this:


The above example is based on a site that was up to Cumulative Update 5 – but the same happens with earlier released Cumulative Updates.

Although this is not really an issue and more cosmetics, it is something that could have been handled more properly by the Service Pack installer. A scenario where this potentially may cause unwanted effects is when using this information in your queries (collections, etc.).


The entries displayed are read from the registry. The screenshot below shows the entry in the registry for the particular cumulative update:


I used the following steps to clean this up:

  1. Start the Registry Editor (regedit.exe)
  2. Go to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall .
  3. Locate the key for CU5 (see screenshot) and take a backup (right-click > export).
  4. Delete the key for CU5.
  5. All done – the entry is no longer displayed.

Note that this cleans up the cosmetics part only – any other leftovers (if any) from Cumulative Updates (and alike) will still remain on the system.

Until next time!


Update on the ConfigMgr 2012 Update Scan Issue – Windowsupdate.log Error 8007000E

April 16, 2015 1 comment

Last week Kim blogged about an issue with Windows 7 and Software Updates that some of his customers had been reporting.

Kim had already outlined the issue and the symptoms, plus also provided a few workarounds which may help in resolving it. Through this post I wanted to inform you that now Microsoft has published a blog post that:

a) gives some more details on the root cause of the problem

b) outlines some possible workarounds and

c) most importantly : states a hotfix is in the pipeline which will be available in (late) Q2

You can find the full details here.

I ran into the same issue at one of my customers last week and have been working with Microsoft support to get this resolved. Below you can read some findings and experiences from the past days.

The workaround to Move wuauserv (Windows Update Agent) to its own SVCHost.exe instance did not prove to be very successful. Although we saw the scan job succeeding on a few clients at first, after a few additional scans the issue returned.

Next step was cleaning up WSUS. First we needed to verify what we could potentially clean up using the script provided by Microsoft:


To get things back on the rails in the end the only successful method was to run WSUS cleanup script to decline all superseded updates. Running the script with the –DeclineLastLevelOnly switch was not sufficient.

Important: Before running this cleanup script make sure to identify if any of the updates are still needed! It could be a superseding update has not yet been released due to your internal approval and/or release processes!

And while you are checking that also note that the script output may be misleading. Set the LastLevel column filter to False if you are actually looking for the Last Level Superseded Updates.


Running the script itself took around 15 minutes.

Note: if you are running multiple SUPS in your environment you should only run this on one SUP – the one with Windows Update set as synchronization source.

Hope it helps!