在哪里可以找到 Delphi Windows API 调用的声明?
Where can I find Delphi Declarations for Windows API calls?
我想看看如何在 Delphi 中调用 Windows API。最近我有一个关于 GetProcessorAffinity 的问题,Delphi 声明作为答案的一部分发布。我想知道如何找到这类信息。
没有名为 GetProcessorAffinity
的函数。可能你的意思是 GetProcessAffinityMask
。该函数在 RTL 单元 Winapi.Windows
中声明。此源文件随 Delphi 一起提供。您可以使用 CTRL + 单击导航到任何函数的声明。
如果您使用 GetProcessorAffinity
这样做,那么您将被带到 Winapi.Windows
中的实现。现在,该实现如下所示:
function GetProcessAffinityMask; external kernel32 name 'GetProcessAffinityMask';
这不是很有用,但您正在寻找的信息就在附近。现在您位于包含实现的文件中,您可以找到声明。移至文件顶部并搜索 GetProcessAffinityMask
。这将带你到这里:
function GetProcessAffinityMask(hProcess: THandle;
var lpProcessAffinityMask, lpSystemAffinityMask: DWORD_PTR): BOOL; stdcall;
这就是您需要的信息。
许多 Windows API 函数(但不是全部)都在 Winapi.Windows
中声明。但无论如何,上述过程都会将您带到正确的文件。
另一种有用的技术是在文件内搜索。从 IDE 搜索 菜单 select 在文件中查找 。像这样配置对话框:
请注意,您需要使用适合您的 Delphi 版本的路径。例如,我的示例来自 XE7,版本 15,但您有 XE5,版本 12。
Delphi 默认带有一些 Windows API 在不同的单元中(其中很多在 (WinApi.)Windows 单元中。
可以在 Delphi Jedi Apilib 项目中找到 Windows API headers 的更完整翻译。
我想看看如何在 Delphi 中调用 Windows API。最近我有一个关于 GetProcessorAffinity 的问题,Delphi 声明作为答案的一部分发布。我想知道如何找到这类信息。
没有名为 GetProcessorAffinity
的函数。可能你的意思是 GetProcessAffinityMask
。该函数在 RTL 单元 Winapi.Windows
中声明。此源文件随 Delphi 一起提供。您可以使用 CTRL + 单击导航到任何函数的声明。
如果您使用 GetProcessorAffinity
这样做,那么您将被带到 Winapi.Windows
中的实现。现在,该实现如下所示:
function GetProcessAffinityMask; external kernel32 name 'GetProcessAffinityMask';
这不是很有用,但您正在寻找的信息就在附近。现在您位于包含实现的文件中,您可以找到声明。移至文件顶部并搜索 GetProcessAffinityMask
。这将带你到这里:
function GetProcessAffinityMask(hProcess: THandle;
var lpProcessAffinityMask, lpSystemAffinityMask: DWORD_PTR): BOOL; stdcall;
这就是您需要的信息。
许多 Windows API 函数(但不是全部)都在 Winapi.Windows
中声明。但无论如何,上述过程都会将您带到正确的文件。
另一种有用的技术是在文件内搜索。从 IDE 搜索 菜单 select 在文件中查找 。像这样配置对话框:
请注意,您需要使用适合您的 Delphi 版本的路径。例如,我的示例来自 XE7,版本 15,但您有 XE5,版本 12。
Delphi 默认带有一些 Windows API 在不同的单元中(其中很多在 (WinApi.)Windows 单元中。
可以在 Delphi Jedi Apilib 项目中找到 Windows API headers 的更完整翻译。