locked
Get-WindowsUpdateLog searches for SymSrv.dll in x86 RRS feed

  • Question

  • I have  a Windows 10 Pro x64 (upgraded from 1607 to 1703 via WSUS). When i try to run Get-WindowsUpdateLog cmdlet on it it shows "Cannot find path 'C:\Program Files (x86)\Windows Defender\SymSrv.dll". But that's a 64-bit OS and that DLL is in the regular Program files. This command works fine on fresh 1703 installed PCs. Wonder what is happening and how to fix that, other than copying and registering the DLL.
    Wednesday, August 23, 2017 6:40 AM

Answers

  • Hi,

    Let’s look at the path:

    C:\Program Files (x86)\Windows Defender\SymSrv.dll

    The SymSrv.dll file should be a part of Windows Defender, if your Windows 10 Pro computer has some third-party security software or Windows Defender has been disabled or damaged, this file is missing or ineffective, then the error message appears. To my knowledge, on incipient 1607 version, WindowsUpdate.log function has trouble, later 1703 version fixes this problem, so your Pro machine(upgrade form 1607) meet with issue but clean-install 1703 machine is fine.

    Besides, another thing we need to know is using the 64-Bit Powershell Version (Windows Powershell) and not the 32-Bit Version "Windows Powershell (x86)" to get WindowsUpdateLog manually.

    You have find out the solution:

    Copy this DLL from any other Windows 10/Server 2016 machine (or search through the “C:\Windows\WinSxS\” folder on the same machine and copy it from there) to “C:\Program Files\Windows Defender” and the cmdlet will work.

    Meanwhile, Windows Defender feature needs to be enabled.

    This way should be the simplest, compared with in-place upgrade vis the iso.

    Regards


    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com.

    • Marked as answer by wrootw Thursday, August 24, 2017 5:58 AM
    Thursday, August 24, 2017 1:52 AM

All replies

  • Hi,

    Let’s look at the path:

    C:\Program Files (x86)\Windows Defender\SymSrv.dll

    The SymSrv.dll file should be a part of Windows Defender, if your Windows 10 Pro computer has some third-party security software or Windows Defender has been disabled or damaged, this file is missing or ineffective, then the error message appears. To my knowledge, on incipient 1607 version, WindowsUpdate.log function has trouble, later 1703 version fixes this problem, so your Pro machine(upgrade form 1607) meet with issue but clean-install 1703 machine is fine.

    Besides, another thing we need to know is using the 64-Bit Powershell Version (Windows Powershell) and not the 32-Bit Version "Windows Powershell (x86)" to get WindowsUpdateLog manually.

    You have find out the solution:

    Copy this DLL from any other Windows 10/Server 2016 machine (or search through the “C:\Windows\WinSxS\” folder on the same machine and copy it from there) to “C:\Program Files\Windows Defender” and the cmdlet will work.

    Meanwhile, Windows Defender feature needs to be enabled.

    This way should be the simplest, compared with in-place upgrade vis the iso.

    Regards


    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com.

    • Marked as answer by wrootw Thursday, August 24, 2017 5:58 AM
    Thursday, August 24, 2017 1:52 AM
  • Thanks. Somehow on the upgraded machine it was first suggesting me the x86 link for PowerShell in the search and i didn't pay attention what version i was running. I guess MS should omit installing x86 PowerShell on x64 machines at all, to lessen the confusion..
    Thursday, August 24, 2017 5:59 AM
  • Hello,

    Thank you very much.

    That's what I was looking for.

    Indeed after copying the file SymSrv.dll from the WinSxS folder to ProgramFile/Defender it works now!

    Thanks a lot!

    Wednesday, April 17, 2019 8:31 AM