我正在Windows中实现服务。 VisualStudio 2012具有以下函数typedef:

typedef VOID WINAPI SERVICE_MAIN_FUNCTIONW (
    DWORD dwNumServicesArgs,
    LPWSTR *lpServiceArgVectors
);

还有一个函数指针typedef:
typedef VOID (WINAPI *LPSERVICE_MAIN_FUNCTIONW)(
    DWORD   dwNumServicesArgs,
    LPWSTR  *lpServiceArgVectors
);

如何使用typedef使用此函数签名定义函数?

最佳答案

您不需要(也不能)在函数定义中使用typedef。要使服务成为主要功能,只需编写:

VOID WINAPI SvcMain( DWORD dwNumServicesArgs, LPWSTR *lpServiceArgVectors )
{
    // ...
}

Windows内部使用LPSERVICE_MAIN_FUNCTIONW来调用每个服务起点。通常,您需要函数指针typedef来调用,而不是定义一个函数。

09-10 04:33
查看更多