如何确定用于构建特定Windows桌面应用程序的框架?

问题描述 投票:4回答:6

如何确定使用哪种平台或编程语言来构建特定的Windows桌面应用程序?

frameworks reverse-engineering
6个回答
10
投票

有几种方法可以尝试检测特定软件的编写语言。通常,这样做的工具检查PE Header并尝试进行有根据的猜测。

有时,作者以这样的方式压缩/加密PE,使得这种检测几乎不可能。

有一个名为PEiD的旧工具可以帮助您识别编写软件的语言。

PEiD


5
投票

Dependency walker也可以通过显示应用程序所依赖的所有dll以及导出方法的名称来解释一些问题。

alt text


3
投票

对于特定情况,有一些选项,但总的来说,没有,没有一种单一可靠的方法可以做到这一点。


2
投票

来自SysInternals的ProcessExplorer非常有用。它可以检测.NET应用程序,并列出加载的DLL,如果其中一些是对语言或框架的运行时支持,则可以提供帮助。

我碰巧安装了诺基亚PC套件,ProcessExplorer说它不是.NET应用程序。它已经加载了MFC71U.DLL和MSVCR71.DLL,I believe来自MFC - 当然诺基亚PC套件可能只是使用用MFC编写的组件。 EXE中还有一些字符串,看起来像C printf字符串给我。


0
投票

有一些方法可以将列表缩小到使用哪种语言,但是你无法知道所有的“方法”。如果在不同平台上有许多开发人员呢? ;)

或者更好的是应用程序是语言的组合?


0
投票

我想知道为自然language identificationauthorship identification开发的技术是否可以适应这个问题。在我看来,这是一个有趣的研究问题。

有点similar question已经提出。

© www.soinside.com 2019 - 2024. All rights reserved.