180X IPU – Event Warning 1534 workaround

If you’re upgrading from 1709 or older to 1803 or newer, you might have noticed a bunch of 1534 Warnings in your event viewer for the User Profile Service


This seems to be a known issue with an upgrade from 1709 to 1809. Windows had a service called Tile Data Model Server in 1709 which was removed in the later version of the OS. Though the service was removed it seems that the subscription information for the Profile was not removed. Hence whenever the load/unload of the profile happens, the user profile service tries to reach out to the service which is not existent. Hence the error.

This issue does not occur if we have a clean build of 1809.

Work around… remove the subscription info in the registry:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileNotification\TDL

HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows NT\CurrentVersion\ProfileNotification\TDL

*I confirmed with MS Support that this workaround was ok.  I provided my script to them, and they said it was good.

Problem, you can’t just delete them, you need to take ownership, add permissions, then delete.. so two lines of code become much longer.. especially when you add logging..

This can be used in a package, or straight up script.  You’ll want to modify the log file location to make sense for the use case. (Or remove log function)

Setup: Run PowerShell Script some place after the machine has upgraded to 1809

Log File: I have it save to the ccm\logs directory.  I have a log SMSTS_PostActions that I log many of my Task Sequence scripts to that happen post upgrade, this gets appending into that log.



I’m assuming an up coming CU from Microsoft will resolve this, but until then…

3 thoughts on “180X IPU – Event Warning 1534 workaround”

  1. Hi Gary, thanks you for this script. I was having trouble deleting the second key and I noticed what I believe is a type in your script. I believe line #158 she be as follows -

    $key = [Microsoft.Win32.Registry]::LocalMachine.OpenSubKey("SOFTWARE\WOW6432Node\Microsoft\Windows NT\CurrentVersion\ProfileNotification\TDL",[Microsoft.Win32.RegistryKeyPermissionCheck]::ReadWriteSubTree,[System.Security.AccessControl.RegistryRights]::takeownership)


    • Yeah, thank you. I noticed that the other day and forgot to update this post, I only updated the script in my exported package. Appreciate it Carl!

  2. I kept getting this message with "SYSTEM"

    Exception calling "SetAccessControl" with "1" argument(s): "The security identifier is not allowed to be the owner of this
    At C:\Users\me\Desktop\TDL.ps1:134 char:5
    + $key.SetAccessControl($acl)
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : InvalidOperationException

    So changed it to "BUILTIN\Administrators" in the 4 places and worked great


Leave a Comment

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