Msdia80.dll is Stored in Root Folder when Visual C++ 2005 is Installed Error

If your computer?s operating system runs at 64bit, you may get msdial80.dll cannot be loaded errors after you try to install Microsoft Visual C++ 2005 Redistributable Package using either Vcredist_x64.exe or Vcredist_ia64.exe. Although the correct path for msdia80.dll is Drive:\Program Files\Common Files\Microsoft Shared\VC, the msdia80 dll file is sent to the root folder of the boot drive.

Users who are experiencing this issue have Windows Vista 64bit installed as their operation system. They also say that they do not have the VC folder where msdia80.dll is supposed to be located.


Solution 1

This error can be resolved with a hotfix from the Microsoft Corporation. Contact Microsoft Corporation for more assistance regarding the hotfix. If you do not need immediate assistance, you may opt to wait for the release of the Visual Studio 2005 service pack that already has this hotfix.

Solution 2

You can also try the following workaround.

Move the Msdia80.dll file to the Drive:\Program Files\Common Files\Microsoft Shared\VC folder.

Make you sure you register msdia80.dll after the file is moved from the original location.

The command to register msdia80.dll follows:

regsvr32 driver:\Program Files\Common Files\Microsoft Shared\VC\msdia80.dll

Solution 3

  1. Go to Control Panel.
  2. Next, go to Programs and Features.
  3. Uninstall Microsoft Visual C++ 2005.

You should delete all remaining msdia80.dll files that you find on your computer. You can use the Search function to find any remaining entries.

Download and install the following files:

Microsoft Visual C++ 2005 and Microsoft Visual C++ 2005 SP
Microsoft Visual C++ 2008 Redistributable Package (x64)
Microsoft Visual C++ 2008 Redistributable Package (x86)

Any errors should go away once these programs are in place. You will also find that you will now have a VC folder containing msdia90.dll.

Errors like this one can often be avoided with the regular use of a registry cleaner. A good registry cleaner can detect, and fix existing errors. Sometimes, users are not even aware that there are certain entries in the registry that are causing system slowdowns. Only after running a registry cleaner do they notice the difference in performance and speed.