我怎样才能确定哪些平台或编程语言被用来建立一个特定的Windows桌面应用程序?
Answer 1:
有几种方法来试图发现其中的语言特定的软件代码的编写。 通常情况下,该做的检查工具PE头 ,并设法使一个受过教育的猜测。
有时作者压缩/加密的,使这个检测几乎是不可能这样的方式的PE。
有一个叫老工具PEID它可以帮助你确定哪些语言是编写的软件。
Answer 2:
该Dependency Walker中还可以通过显示所有的应用程序依赖于动态链接库,还有的导出方法的名称一些启发。
Answer 3:
有针对具体情况的一些选项,但一般无,有做,没有一个单一的和可靠的方式。
Answer 4:
ProcessExplorer从Sysinternals的可能是有用的。 它可以检测.NET应用程序,并列出加载的DLL,它可以帮助,如果他们中的一些是语言或框架运行时支持。
我正好有安装诺基亚PC套件,并ProcessExplorer说,这是不是一个.NET应用程序。 它装载MFC71U.DLL和MSVCR71.DLL,这相信是从MFC -当然诺基亚PC套件的可能仅仅是使用MFC编写的组件。 还有一些EXE文件看起来像C的printf字符串我里面的一些字符串。
Answer 5:
有办法缩小到使用什么语言列表,但你不能知道所有的“怎么样了”。 加什么,如果有不同的平台上一些开发商? ;)
或者更好的应用程序是一个语言组合?
Answer 6:
我不知道是否为自然开发的技术语言识别和作者身份识别可以适应这一问题。 在我看来,一个有趣的研究不够的问题。
一个有些类似的问题已经被提出。
文章来源: How can I determine which framework was used to build a particular Windows desktop application?