有没有办法知道程序是用VB,C#还是Delphi和编译器版本创建的?
答案 0 :(得分:1)
最简单的方法是使用某些软件,例如 DependencyWalker ,看看他们使用的是什么DLL。
.NET二进制文件很容易理解,还有一些软件可以将它们重新组装回C#.NET,VB.NET或C ++ .NET代码(无论你想要什么)
您无法确定.NET二进制文件是用VB.NET还是C#.NET编写的,因为它已转换为 MSIL (Microsoft中间语言)。
资源浏览器等应用程序也应该告诉您有关二进制文件的信息。
如果你更具体一点,我可以提供更多。
答案 1 :(得分:1)
你可以使用像PEiD
这样的工具(不幸的是这个项目已经停止,但应用程序仍在运行)。
PEiD检测到最常见的包装工, PE文件的加密器和编译器。 它目前可以检测到600多个 PE文件中的不同签名。
答案 2 :(得分:0)
是
使用Delphi应用程序,您可以使用资源编辑器,如XN Resource Editor。每个可执行文件都有一个名为DVCLAL的RC_DATA资源,它将其标识为Delphi应用程序(并包含有关编译器版本的信息)。如果应用程序使用VCL(是Windows GUI应用程序),您还可以看到表示表单文件(DFM)的其他RC_DATA资源。您还可以使用十六进制编辑器在二进制文件中查看VCL / RTL类。
Reflector可以显示应用程序是C#还是VB.NET。
DependencyWalker(由另一个答案链接)将显示应用程序是否正在加载VB运行时,这将识别VB Win32应用程序。