gpt4 book ai didi

c# - 如何查找哪些 Dll 包含特定的 W32 函数?

转载 作者:太空狗 更新时间:2023-10-29 20:30:45 28 4
gpt4 key购买 nike

我的应用程序是一个 WPF 应用程序,它已经具有旧类型的系统 DPI 感知代码,该代码适用于除 8.1 以外的所有 Windows 版本。事实证明,Microsoft 在 Windows 8.1 中添加了许多功能,作为其实现每个显示器 DPI 感知的一部分。我需要在我的程序中实现代码来支持这种类型的 DPI 感知。

我的文档列出了每个显示器的 DPI 感知功能及其参数。我需要将它们导入 C# 并从我的窗口类中调用它们。但我不知道哪些 DLL 包含这些功能!例如,GetProcessDpiAwareness 函数的文档并未指明它位于哪个 DLL 中。

如何找到 DLL 中的导出内容?

最佳答案

一个愚蠢的方法:在 C:\Windows\System32 中对 GetProcessDpiAwareness 进行二进制搜索,然后用 Dependency Walker 研究每个出现的地方用于导出。

这会产生结果:GetProcessDpiAwarenessSHCore.dll 导出。

人们也可以搜索 Windows SDK header 和库,但在我的例子中,令我惊讶的是,我没有找到 GetProcessDpiAwareness

另一个想法,从命令行提示符运行以下命令:

for %f in (%windir%\system32\*.dll) do dumpbin.exe /exports %f >>%temp%\__exports

然后在 %temp%\__exports 中搜索 API。

关于c# - 如何查找哪些 Dll 包含特定的 W32 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21565739/

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