extern "C" DLL_EXPORT BOOL WINAPI MarshalStructAsParam_AsExpByRefInU(U* str1) { if(!IsCorrectU(str1)) { printf("\tMarshalStructAsParam_AsExpByRefIn6:U param not as expected\n"); PrintU(str1, "str1"); return FALSE; } ChangeU(str1); return TRUE; }
extern "C" DLL_EXPORT BOOL __stdcall MarshalStructAsParam_AsExpByRefU_Stdcall(U* str1) { if(!IsCorrectU(str1)) { PRINT_ERR_INFO(); PrintU(str1, "str1"); return FALSE; } ChangeU(str1); return TRUE; }
extern "C" DLL_EXPORT BOOL __stdcall DoCallBack_MarshalByRefStruct_Stdcall_U(ByRefStdcallCaller_U caller) { U u; u.d = 1.23; if(!caller(&u)) { PRINT_ERR_INFO(); return FALSE; } if( !IsCorrectU( &u ) ) { PRINT_ERR_INFO(); return FALSE; } return TRUE; }
extern "C" DLL_EXPORT BOOL _cdecl DoCallBack_MarshalByValStruct_Cdecl_U(ByValCdeclCaller_U caller) { U u; u.d = 3.2; if(!caller(u)) { PRINT_ERR_INFO(); return FALSE; } if( !IsCorrectU( &u ) ) { PRINT_ERR_INFO(); return FALSE; } return TRUE; }