我的应用程序是一个WPF应用程序,它已经具有较旧类型的系统DPI感知代码,该代码适用于除8.1之外的每个版本的Windows.事实证明,微软在Windows 8.1中添加了许多功能,作为实现每个监视器DPI感知的一部分.我需要在我的程序中实现代码以支持这种类型的DPI感知.
我有文档列出了每个监视器的DPI感知功能及其参数.我需要将它们导入C#并从我的窗口类中调用它们.但我不知道哪些DLL包含这些功能!GetProcessDpiAwareness
例如,该函数的文档并未指出它所在的DLL.
如何找到DLL中的导出内容?
突然想到一个愚蠢的方法:对C:\Windows\System32
for进行二分搜索GetProcessDpiAwareness
,然后使用Dependency Walker研究每个出现的情况以进行导出。
这会产生结果:GetProcessDpiAwareness
由 导出SHCore.dll
。
人们还可以搜索 Windows SDK 标头和库,但令我惊讶的是,就我而言,我还没有找到GetProcessDpiAwareness
。
另一个想法是,从命令行提示符运行以下命令:
for %f in (%windir%\system32\*.dll) do dumpbin.exe /exports %f >>%temp%\__exports
Run Code Online (Sandbox Code Playgroud)
然后搜索%temp%\__exports
API。
归档时间: |
|
查看次数: |
1208 次 |
最近记录: |