【问题标题】:List of all existing WinApi Functions [closed]所有现有 WinApi 函数的列表 [关闭]
【发布时间】:2021-08-25 11:02:07
【问题描述】:

是否有现有 winapi 函数的列表? This 论文声称它分析了大约 22000 个 winapi 函数。这些功能是否在某处的 Windows 机器上列出?或者有没有列出这些的网站?

当遵循@IInspectable 的方法时,我收到以下错误:

【问题讨论】:

    标签: windows winapi operating-system windows-10 windows-7


    【解决方案1】:

    [A]是否有列出这些 [winapi 函数] 的网站?

    可能。如果有,它们可能很糟糕。无论哪种方式,如果这是您的问题,那就是off-topic

    这些 [winapi] 函数是否列在 Windows 机器上的某个地方?

    没有。没有实际理由拥有该列表。应用程序知道它们需要哪些 API,并且操作系统加载程序将解决这些依赖关系(用于编译时动态链接),或者运行时动态链接将其结果报告给调用应用程序。

    两者都不需要列出他们无论如何都不感兴趣调用的所有可用 API。如果您的应用程序不打算调用TABTHETEXTOUTFORWIMPS,它可能没有兴趣知道TABTHETEXTOUTFORWIMPS 实际位于何处。


    可用的 API 调用通过 Windows SDK 发布。它包括编译器所需的函数签名,以及链接器非常感兴趣的函数实现的位置信息。


    Windows SDK 包含您似乎感兴趣的信息1

    Win32 Metadata 项目通过扫描 Windows SDK 头文件来收集元数据,并将其作为机器可读程序集提供。结果是 published 到 NuGet 库。

    可以使用任何了解 ECMA-335 元数据的工具(如 Visual Studio 的对象浏览器或 ILSpy)打开程序集。如果这些工具都不能满足您的即时需求,您可以自己解析数据并获取任意信息。二进制文件格式为documented


    1显然,Windows API 表面的基数。并不是说我会挑战论文作者的意图,尽管我可能会错过阅读标题中包含“深度学习”的论文,即使我的时间不受资源限制.很有可能它只是完全的垃圾。

    【讨论】:

    • 我下载了 .nupkg 但如何在 Visual Studios 中打开它?
    • nupkg 存档中提取 Windows.Win32.winmd 文件。打开 Object Browser (Ctrl+Alt+J) 并使用 Edit Custom Component Set 选项添加 .winmd 文件,或者从 Browse选项或 ... 快捷方式。
    • 我收到错误“无法搜索所选组件”大致翻译成英文。
    • 哪个操作失败了?
    • 我刚刚下载了最新版本(10.2.84-preview),解压了 Windows.Win32.winmd 文件并将其添加到 Object Browser 在 Visual Studio 中。打开 Edit Custom Component Set 对话框后,移动到 Browse 选项卡,然后添加文件。
    猜你喜欢
    • 2017-12-29
    • 2018-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多