Адрес Callback'а передается в функцию перечисления, и оттуда вызывается. Точное совпадение типов не обязательно (можно и DWORD'ами все заменить), но тогда будет неудобно использовать. Перевод:
BOOl - boolean;
CALLBACK - насколько помню, задефайнен на модификатор stdcall;
_In_ - не важен в данном случае;
LPSTR - PChar;
DWORD - DWORD;
LONG_PTR - по-моему, он Int64. Но лучше посмотреть в хедерах/MSDN.
Так что
Код:
BOOL CALLBACK EnumProc_B( _In_ LPSTR lpArg);
переведется в
Код:
function EnumProc_B(lpArg: PChar): boolean; stdcall;