Without code I can only guess ...
You need 3 pieces to complete this puzzle. First, you need to define a function-pointer-type. You don't
have to do it this way, but it's far easier.
typedef sObject* (*pfnGetObject)(int);
Now that we've defined a type called pfnGetObject, we need a variable to hold the value in:
pfnGetObject GetObject = 0;
I use 0 instead of NULL - personal preference.
Finally, the last stage is to populate that variable with the address of the function itself:
GetObject = (pfnGetObject)GetProcAddress(g_pGlobal->g_Basic3D,"?GetObjectA@@YAPAUsObject@@H@Z");
The first two pieces go at the top of your source code outside of any function, making them global within the file. The last piece will probably best fit into either your ReceiveCoreDataPtr or Constructor functions.
From that point on, you just use the variable as if it were a function:
sObject* MyObject = GetObject(ObjNo)
Don't forget to ensure that the Basic3D DLL is included in your executable, either the easy way by using a 3D command, or the harder way using code like the following:
EXPORT int GetNumDependencies( void )
{
return 1;
}
EXPORT char const* GetDependencyID(int ID)
{
switch(ID)
{
case 0: return "DBProBasic3DDebug.dll";
default: return 0;
}
}