• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 175
  • Last Modified:

Callback functions ?

How can functions in a C DLL call methods/functions in the calling application.For example: a method called fnAdd(..) which resides in a DLL neeeds to take dynamic data from the user( interaction with the user ). Is it possible by passing to the dll a function name ( this function can be called by using the win api GetProcAddress )which it can call to take new data from the user.
Is there a specific way to pas such function names ?
0
shayad
Asked:
shayad
1 Solution
 
rwilson032697Commented:
Simply pass a pointer to the function in the application to the dll like so (second arg is a pointer to a function taking two int args returning an int.

extern "C" ADLLFunc(int arg1, (int)(int, int) *Arg2)
{
//...

if ((*arg2)(1, 2)) // call the callback function
{
 // ...
}
//...
}

My syntax declaration may be a little rusty but you get the picture...

Cheers,

Raymond.
0

Featured Post

Receive 1:1 tech help

Solve your biggest tech problems alongside global tech experts with 1:1 help.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now