c++ - 识别应用程序的架构

标签 c++ wpf windows forms winapi

有没有办法确定应用程序正在实现的架构?

我正在尝试确定 Win32、WPF 或 Windows 窗体是否被第 3 方应用程序使用。

感谢帮助

最佳答案

您可以查看应用程序的 EXE 和 DLL,例如使用 ILSpy。

据我所知,WPF 和 WinForms 仅限于 .NET 框架。因此,如果它不是 .Net EXE,并且 ILSpy 不解析它,则它可能是 Win32。

如果是 .Net EXE,请查看引用资料。如果仅引用 WPF 特定的 dll,则可能是 WPF。如果只有 WinForms 特定的 dll,可能是 WinForms。如果两者都存在,则需要从 main 方法开始跟踪程序以找到证据,使用了哪个 API。

但无论哪种方式,都没有强有力的证据。两种 API 可以混合使用,并且可以使用各自的窗口或元素。由于 WinForms 是 native Win32 API 的包装器,因此只要您使用 WinForms,您实际上也使用了 Win32 API。

所以这可能取决于您具体需要了解什么。

关于c++ - 识别应用程序的架构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34914954/

相关文章:

c++ - 颜色检测中打开 cvtColor 速度太慢

c++ - 创建右值并通过转发将其传递给函数

c# - 我可以使用反射访问 ItemsControl 的 ItemsHost 吗?

c# - WPF + Windows 窗体错误处理

c# - 如何在 C# WPF 应用程序中加载网页后获取文本

c# - 使用C#/C++,是否可以限制网络流量?

c# - 从父类ctor调用重写的方法

linux - 构建时Docker文件非零代码100错误

.net - 使用 ASP.NET 时,我们是否可以访问 .NET Framework 中的所有类?

C++ CreateWindowEx 返回 NULL