#include "stdio.h" #define _DLL_EXPORT extern "C" __declspec( dllexport ) typedef void (__stdcall *call_back_type)(); //typedef void (__cdecl *call_back_type)(); struct TD { int type; call_back_type t; //here may be other functions }; _DLL_EXPORT void* test(void *o,int i,TD t) { printf("%x %d %d\n",(unsigned long)o,i,t.type); t.t(); return o; }