I have a C++ console application & a DLL. In the C++ application I see the following snippet ::
typedef DWORD (WINAPI* functABC)(unsigned long*);
functABC functABC111;
HMODULE handleDLL = LOadLibrary("a.DLL");
functABC111 = (functABC)GetProcAddress(handleDLL,"function_1");
At a high level I understand that we are getting the function pointer to the function in a.DLL "function_1()".
But want to understand the 1st 2 lines in the above snippet ::
typedef DWORD (WINAPI* functABC)(unsigned long*);
functABC functABC111;
2 questions ::
1) Is the name "functABC" just a random function pointer name?
2) What are we technically doing in these 2 lines. Declaring function pointer.
3) Why do we need to use WINAPI* in the function pointer declaration in 1st line.
THanks in advance.