【发布时间】:2017-01-21 22:46:42
【问题描述】:
我正在尝试从“.pdb”文件生成“.mdb”文件,以便为 DLL 设置调试会话。但是我在 pdb2mdb.exe 文件上收到“BadImageFormatException:无效的 PE 文件”。
与问题相关的 Unity 文档:https://docs.unity3d.com/Manual/UsingDLL.html
这是我正在运行的命令:
"D:\Program Files\Unity\Editor\Data\Mono\lib\mono\2.0\pdb2mdb.exe" "D:\Projects\UnityXGame\UnityXGame.Games\UnityXGame.Sandbox\Assets\UnityXGame.Unity.Common.pdb"
此参考文件可在 Unity 5 上正确运行。我可以调用类及其实例。
我收到以下错误:
未处理的异常:System.BadImageFormatException:无效的 PE 文件 文件名: 'D:\Projects\UnityXGame\UnityXGame.Games\UnityXGame.Sandbox\Assets\UnityXGame.Unity.Common.pdb' ---> Mono.Cecil.Binary.ImageFormatException:Mono.Cecil.Binary.ImageReader.VisitDOSHeader(DOSHeader) 处的 PE 文件签名无效 标题)在 Mono.Cecil.Binary.Image.Accept(IBinaryVisitor 访问者)
在 Mono.Cecil.Binary.ImageReader.Read(字符串文件) Mono.Cecil.Binary.ImageReader.Read(字符串文件)在 Mono.Cecil.AssemblyFactory.GetAssembly(字符串文件)在 Pdb2Mdb.Driver.Main(String[] args)
有什么办法可以解决这个错误吗?
【问题讨论】: