无法将类型为“System.ComObject”的 COM 对象强制转换为接口类型.如何解决

无法将类型为“System.__ComObject”的 COM 对象强制转换为接口类型.怎么解决?
无法将类型为“System.__ComObject”的 COM 对象强制转换为接口类型“Microsoft.Office.Interop.Excel.Application”。此操作失败的原因是对 IID 为“{000208D5-0000-0000-C000-000000000046}”的接口的 COM 组件调用 QueryInterface 因以下错误而失败: 加载类型库/DLL 时出错。 (异常来自 HRESULT:0x80029C4A (TYPE_E_CANTLOADLIBRARY))。
------解决方案--------------------
COM错误:无法加载dll
如果确认已安装了excel,看看它的版本和你在自己机器上引用的Excel组件版本一致
其实你可以在catch块里多一道动态创建的操作
try
            {
                xlApp = new Excel.Application();
                if (xlApp == null)
                {
                    returnMessage = "无法创建Excel对象,可能您的计算机未安装Excel!";
                    return false;
                }
            } 
            catch
            {
                      try
                      {
                                var typeCLSID = Guid.Parse("000208D5-0000-0000-C000-000000000046");
                                type = System.Type.GetTypeFromCLSID(typeCLSID);
                                object excelComObj = Activator.CreateInstance(type); 
                      }
                      catch (Exception ex)
                       {
                             returnMessage = "请正确安装Excel!";
                             //throw ex;
                              return false;
                        }
            }

只给你思路,上面的GUID和progID可以通过 控制面板 > 管理工具 > 组件服务 -> DCOM 中找到(找不到则说明没有安装成功)
object excelComObj = Activator.CreateInstance(type); 
//或者你也可以通过ProID,也就是COM组件名的方式创建
object excelComObj = Marshal.GetActiveObject("Microsoft Excel Application");  //VB中也可以用GetObject()
object也可以用Net4.0之后的动态类型
否则你会由于C#编译时的类型检查,使用组件里的函数时非常麻烦(不停地反射),当然用VB.Net也会很方便
------解决方案--------------------
引用:
无法将类型为“System.__ComObject”的 COM 对象强制转换为接口类型“Microsoft.Office.Interop.Excel.Application”。此操作失败的原因是对 IID 为“{000208D5-0000-0000-C000-000000000046}”的接口的 COM 组件调用 QueryInterface 因以下错误而失败: 加载类型库/DLL 时出错。 (异常来自 HRESULT:0x80029C4A (TYPE_E_CANTLOADLIBRARY))。

不看代码,先查环境
先看看office安装时excel的.net编程支持支持是否安装,
如果是精简版或者绿色版的office往往出问题;
其次,查下程序引用的版本和本地的版本是否一致,
不一致,重新添加引用。