正在运行转换: System.Runtime.Remoting.RemotingException: 无法加载类型“EnvDTE._DTE

在编写T4,引用envdte时,遇到如下错误,解决方案:右击引用中的envdte,属性中将“嵌入互操作类型”为false,重新编译库即可。

错误信息如下:

严重性    代码    说明    项目    文件    行    禁止显示状态
错误        正在运行转换: System.Runtime.Remoting.RemotingException: 无法加载类型“EnvDTE._DTE, SunLibsT4, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null”。

Server stack trace:
   在 System.Runtime.Remoting.Messaging.MethodCall.ResolveMethod(Boolean bThrowIfNotResolved)
   在 System.Runtime.Remoting.Messaging.MethodCall..ctor(SmuggledMethodCallMessage smuggledMsg, ArrayList deserializedArgs)
   在 System.Runtime.Remoting.Channels.CrossAppDomainSink.DoDispatch(Byte[] reqStmBuff, SmuggledMethodCallMessage smuggledMcm, SmuggledMethodReturnMessage& smuggledMrm)
   在 System.Runtime.Remoting.Channels.CrossAppDomainSink.DoTransitionDispatchCallback(Object[] args)

Exception rethrown at [0]:
   在 System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
   在 System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
   在 EnvDTE._DTE.get_Solution()
   在 SunLibsT4.VsEnvDTE.GetProjItems(DTE dte, String projName) 位置 D:xxxSunLibsT4VsEnvDTE.cs:行号 21
   在 Microsoft.VisualStudio.TextTemplating301464833F8C1E60539C53A4CDE228F2844B56753A077BAA39DB6F84A92B0D832E303718B4D9431C01891AB714F71DB232CE4D3452AA69FE5F84AE1492D82E00.GeneratedTextTransformation.TransformText()    SunLibsT4.Con    D:xxxSunLibsT4.ConTextTemplate4DesignTime.tt    1    

原文地址:https://www.cnblogs.com/sun51586/p/6603727.html