为进程句柄和PID键入库正确的数据类型

时间:2014-01-14 18:03:14

标签: windows delphi delphi-6

如果我需要翻译成Delphi框架中的类型,我会使用:

  • 对于DWORD:Cardinal类型,用于标识进程的PID。 (tagPROCESSENTRY32)
WinAPI DataType | Delphi Translated DataType | Automation Object Compatible DataType

DWORD           | Cardinal                   | ?????
  • 对于HANDLE,HWND类型,用于映射从AllocatedHWND返回的句柄。后者将用于进程间通信(IPC)
WinAPI DataType | Delphi Translated DataType | Automation Object Compatible DataType

HANDLE(HWND)    | HWND                       | ?????

但是,我需要翻译这些类型以通过COM(类型库)接口传递它们。

我应该使用哪种正确的类型?

注意:类型需要与自动化对象100%兼容。

1 个答案:

答案 0 :(得分:6)

Automation-compatible types中选择一个。

如果目标平台同时包含32位和64位架构,那么

SYSUINT(即VT_UINTunsigned int)似乎是您最好的选择。对于仅32位,您可以选择LongWordVT_UI4)。

如果您不需要兼容自动化的COM库,您也可以为Pointer选择THandle