2

Has anyone come across Class Not Registered issue while opening Data Source Views in SSAS using Visual Studio 2015? There are similar posts not haven't found anything exactly the same. enter image description here

Error text:

Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)) (msddsp)

2
  • Did you see this post? Reinstalling Office Web Components fixed in this case. Oct 25, 2017 at 18:29
  • Thanks, it mentioned reinstall Office 2003 Web Component but we are using Office 365 at work?
    – yang
    Oct 25, 2017 at 21:12

1 Answer 1

2

You have either installed an older version of SSDT/Visual Studio side by side with your 2015 visual studio or you are trying to open a data source view created in a newer version of SSDT/Visual Studio.

Some binary data stream is written in the .dsv file and includes the version information. The solution is to install a recent enough version of Visual Studio or SSDT and possibly re-register DDSShapes.dll.

See this MSDN post for details which explains:

If you try to use SQL Server 2012 version of the SQL Server Data Tool to open the DSV modified by the SQL Server 2014 version of the SQL Server Data Tool, you gets this COM exception. The reason is, this leading 4 characters of binary data is the version of ATL used to compile the DDSShapes.dll. When this DLL reads the binary data, it check if the version of the ATL that was used to save the data, making sure it is below the version recognized by the DDSShapes.dll. "000a" is a higher value than "0008", so the SQL Server 2012 version of the SQL Server Data Tool throws an exception.

The solution is to install the SQL Server 2014 version of the SQL Server Data Tool from https://msdn.microsoft.com/en-us/data/hh297027 . You should get the new version of the DDSShapes.dll in C:\Program Files (x86)\Microsoft SQL Server\120\Tools\Bin.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.