Unable to load adalsql.dll error when calling `Invoke-sqlcmd`

前端 未结 5 979
北恋
北恋 2021-01-31 17:35

I have VS2015 with SSDT installed, along with SSMS and the SqlServer PowerShell module (which includes the invoke-sqlcmd comand), and yet If I try to execute a qu

5条回答
  •  你的背包
    2021-01-31 17:40

    So, this problem vexed me as well. I'm unclear as to how it happened, but maybe it's just coincidence that it happened when I installed the latest version of SSMS. My fix was to:

    1. Navigate to Add or Remove Programs

    2. In the little search window type sql, or just go find: "Active Directory Authentication Library for SQL Server".

    Note: This will not be in Windows' installed programs list if you have installed Visual Studio 2019. You can run the same installer by invoking MsiExec.exe /I{6BF11ECE-3CE8-4FBA-991A-1F55AA6BE5BF} from a command prompt.

    1. Uninstall that little guy

    2. Navigate here and download the latest ADAL library (pick x64):
      https://www.microsoft.com/en-us/download/confirmation.aspx?id=48742

    3. Just for kicks, reboot

    4. Your stuff should now properly load adalsql.dll!

    Update #3, 2020-07-13: Installing the older version works, but is vulnerable to being clobbered by the SSMS and VS2019 installers. The reason the new version of ADAL doesn't work is because its installer fails to add a registry entry pointing to the 64-bit version of adal.dll. I added an answer below which includes the missing registry value, which you can add yourself. Once that's done, you should never need to do this dance again. - @Tullo_x86

提交回复
热议问题