有没有办法编写一个宏或typedef与一些魔术,我可以写在较小的三条线?写入(函数原型,函数指针,外部指针)更小
extern "C" NTSTATUS NTAPI KeInitializeApc(PKAPC Apc,
PKTHREAD thread,
UCHAR state_index,
PKKERNEL_ROUTINE ker_routine,
PKRUNDOWN_ROUTINE rd_routine,
PKNORMAL_ROUTINE nor_routine,
UCHAR mode,
PVOID context);
typedef NTSTATUS (NTAPI *KeInitializeApc_t)(PKAPC Apc,
PKTHREAD thread,
UCHAR state_index,
PKKERNEL_ROUTINE ker_routine,
PKRUNDOWN_ROUTINE rd_routine,
PKNORMAL_ROUTINE nor_routine,
UCHAR mode,
PVOID context);
extern "C" KeInitializeApc_t PKeInitializeApc;
另外,我是否必须在原型,函数和外部使用extern“C”?如果我想要没有重叠的名字?
extern "C" NTSTATUS NTAPI KeInitializeApc(PKAPC Apc,
PKTHREAD thread,
UCHAR state_index,
PKKERNEL_ROUTINE ker_routine,
PKRUNDOWN_ROUTINE rd_routine,
PKNORMAL_ROUTINE nor_routine,
UCHAR mode,
PVOID context);
extern "C" typedef NTSTATUS (NTAPI *KeInitializeApc_t)(PKAPC Apc,
PKTHREAD thread,
UCHAR state_index,
PKKERNEL_ROUTINE ker_routine,
PKRUNDOWN_ROUTINE rd_routine,
PKNORMAL_ROUTINE nor_routine,
UCHAR mode,
PVOID context);
extern "C" KeInitializeApc_t PKeInitializeApc;
在每一行上使用extern“C”似乎不正确。
谢谢你的时间。
谢谢约翰,我会用你的答案。我喜欢宏的:) – DebugMechanic