C# 无法将程序集转换为类型库-错误:类型库导出程序无法加载类型

C# 无法将程序集转换为类型库-错误:类型库导出程序无法加载类型,c#,.net,visual-studio,C#,.net,Visual Studio,我正在尝试构建一个使用.NET Framework 2.0 如果我用.NETFramework4.0构建了相同的组件,它会成功构建,但是 使用.Net framework 2.0时,生成失败,错误为“程序集无法转换为类型库” 以下是此错误的完整错误报告: Error 14 The assembly "X:\MyAssembly.dll" could not be converted to a type library. Type library exporter encountered a

我正在尝试构建一个使用.NET Framework 2.0

如果我用.NETFramework4.0构建了相同的组件,它会成功构建,但是

使用.Net framework 2.0时,生成失败,错误为“程序集无法转换为类型库”

以下是此错误的完整错误报告:

Error   14  The assembly "X:\MyAssembly.dll" could not be converted to a type library. Type library exporter encountered an error while processing 'Namespace.ComponentName, ProjectName'. Error: Type library exporter cannot load type 'Namespace.ComponentName' (error: System.Security.SecurityException: Request for the permission of type 'System.Security.Permissions.SecurityPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.
   at System.Security.CodeAccessSecurityEngine.ThrowSecurityException(Assembly asm, PermissionSet granted, PermissionSet refused, RuntimeMethodHandle rmh, SecurityAction action, Object demand, IPermission permThatFailed)
   at System.Security.CodeAccessSecurityEngine.ThrowSecurityException(Object assemblyOrString, PermissionSet granted, PermissionSet refused, RuntimeMethodHandle rmh, SecurityAction action, Object demand, IPermission permThatFailed)
   at System.Security.CodeAccessSecurityEngine.CheckSetHelper(PermissionSet grants, PermissionSet refused, PermissionSet demands, RuntimeMethodHandle rmh, Object assemblyOrString, SecurityAction action, Boolean throwException)
   at System.Security.CodeAccessSecurityEngine.CheckSetHelper(CompressedStack cs, PermissionSet grants, PermissionSet refused, PermissionSet demands, RuntimeMethodHandle rmh, Assembly asm, SecurityAction action)
The action that failed was:
InheritanceDemand
The type of the first permission that failed was:
System.Security.Permissions.SecurityPermission
The first permission that failed was:
<IPermission class="System.Security.Permissions.SecurityPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
version="1"
Flags="UnmanagedCode"/>

The demand was for:
<PermissionSet class="System.Security.PermissionSet"
version="1">
<IPermission class="System.Security.Permissions.SecurityPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
version="1"
Flags="UnmanagedCode"/>
</PermissionSet>

The granted set of the failing assembly was:
<PermissionSet class="System.Security.PermissionSet"
version="1">
<IPermission class="System.Security.Perm
错误14程序集“X:\MyAssembly.dll”无法转换为类型库。类型库导出程序在处理“Namespace.ComponentName,ProjectName”时遇到错误。错误:类型库导出程序无法加载类型“Namespace.ComponentName”(错误:System.Security.SecurityException:请求类型“System.Security.Permissions.SecurityPermission,mscorlib,版本=2.0.0.0,区域性=中性,PublicKeyToken=b77a5c561934e089”的权限失败。
位于System.Security.CodeAccessSecurityEngine.ThrowSecurityException(程序集asm、已授予的权限集、已拒绝的权限集、RuntimeMethodHandle rmh、SecurityAction操作、对象请求、IPermission Permthapped失败)
位于System.Security.CodeAccessSecurityEngine.ThrowSecurityException(对象程序集或字符串、已授予的权限集、已拒绝的权限集、RuntimeMethodHandle rmh、SecurityAction操作、对象请求、失败的IPermission Permthapped)
位于System.Security.CodeAccessSecurityEngine.CheckSetHelper(PermissionSet授权、PermissionSet拒绝、PermissionSet要求、RuntimeMethodHandle rmh、对象汇编或字符串、SecurityAction操作、布尔ThroweException)
位于System.Security.CodeAccessSecurityEngine.CheckSetHelper(压缩堆栈cs、PermissionSet授权、PermissionSet拒绝、PermissionSet要求、RuntimeMethodHandle rmh、程序集asm、SecurityAction操作)
失败的操作是:
继承要求
第一个失败的权限的类型是:
System.Security.Permissions.SecurityPermission
第一个失败的权限是:
要求是:
失败程序集的授权集为:

正如用户Hans Passant所指出的,X:drive确实是个问题。 通过使用CASPOL命令,我无法通过给予它“完全信任”使它工作。 但是,当我使用SUBST命令映射X:drive时,我能够构建

所以,使用SUBST命令映射X:drive解决了我的问题


subst X:D:\XDriveFolderToBeMapped

肯定是X:drive出了问题,默认情况下,映射的网络驱动器位于IntraNet区域。您必须告诉他们