[英]Where can I find a comprehensive list of Delphi "compiler magic" declarations?
[英]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;
這就是您需要的信息。
Winapi.Windows
中聲明了許多Windows API函數,但不是全部。 但是無論如何,上述過程將帶您進入正確的文件。
另一個有用的技術是在文件中搜索。 從“ IDE 搜索”菜單中,選擇“在文件中查找” 。 像這樣配置對話框:
請注意,您需要使用適合您的Delphi版本的路徑。 例如,我的示例來自版本15的XE7,但是您擁有版本12的XE5。
默認情況下,Delphi帶有一些Windows API,它們以不同的單位(很多都在(WinApi。)Windows單位中)提供。
Windows API標頭的更完整翻譯可以在Delphi Jedi Apilib項目中找到。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.