gpt4 book ai didi

c# - 在 dotPeek 中反编译 .NET Framework v4.5 可执行文件 "not .NET assembly file"但可执行文件运行正常

转载 作者:太空狗 更新时间:2023-10-29 21:27:26 24 4
gpt4 key购买 nike

一位客户与他们以前的开发人员断绝了联系,我正试图从他们的工资单可执行文件中提取源代码,不幸的是,作为一名 Web 开发人员,我对 .NET 框架没有太多经验。

编辑:我们的客户合法拥有该软件但没有要求提供源代码,开发人员没有回应我们的通信。我在 SO 上提出这个问题的目的不是为了寻求法律建议(我们已经有人处理了),而是为了提供任何可用于反编译的选项。

我以前用 JetBrains dotPeek 成功反编译过可执行文件,但是它们都运行 .Net Framework v2.0/v4.5 框架。我目前正在使用的客户端工资单可执行文件运行 .Net Core v4.5,dotPeek、ILSpy 或我作为 .NET 程序集文件运行的其他 C# 反编译软件无法识别它。

经过一些研究,我相信 .Net Core 最近是开源的......但是我不确定我如何才能完成反编译过程,或者是否有可能在这个观点。有什么建议吗?

注意:我会接受“无法反编译,但您是否先尝试过 X、Y、Z?”这样的回答。由于我们的日程安排很紧,我需要让客户知道是否可以完成。

我所做的一些澄清:在 dotPeek 中打开 program.exe,右键单击属性给我这个:

enter image description here

它声称“不是 .NET 程序集文件”,但我可以正常运行可执行文件。

编辑:是否可以从可执行文件中提取更多信息,以便缩小另一种反编译方法的范围?

我怀疑 .NET 反编译器在这里无济于事。

最佳答案

开发人员在开发网站上提出了一个合法的编程问题,应该得到有根据的回应。没有不需要的法律建议。反编译 dll 有很多合理的理由。

当 dotnetpeak 提示文件是使用“.Net Core v4.5”开发的并且没有 MVID 时,它会提示该文件缺少 CLR header 。

如果将文件反编译回程序集,您可能会发现该文件是用 VB6 开发的标识标记。

找到一个好的 VB6 反编译器,您就可以毫无问题地反编译该程序。遗憾的是,您无法将 vb6 完全反编译回源代码,但您可以很好地理解应用程序的构建方式。

关于c# - 在 dotPeek 中反编译 .NET Framework v4.5 可执行文件 "not .NET assembly file"但可执行文件运行正常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27754872/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com