这是转换为Visual Studio 2013的Visual Studio 2010应用程序。
代码在本地计算机上正常工作。
相同的代码在安装Visual Studio 2013的服务器上出错:
无效的类字符串(来自HRESULT的异常:0x800401F3(CO_E_CLASSSTRING))
答案 0 :(得分:0)
加载某些特定插件时出错,无论插件是否需要配置文件中的某些设置。检查Windows事件日志。
尝试从DOS提示符运行以下命令:
marshal.exe / RegServer
您需要具有计算机管理员权限才能运行此命令行。
答案 1 :(得分:0)
在原始应用程序中,您最有可能会看到如下所示的行:
EnvDTE80.DTE2 dte2 = (EnvDTE80.DTE2)System.Runtime.InteropServices.Marshal.
GetActiveObject("VisualStudio.DTE.10.0");
这一行会给你代表你的visual studio IDE的DTE(或DTE2)对象,但使用
" VisualStudio.DTE.10.0"
仅获取VS2010的实例,您需要的实际是2013版本:
" VisualStudio.DTE.12.0"
您可以在此处了解详情: How to: Get References to the DTE and DTE2 Objects