If it works, thanks. I couldn't do this myself. OgreDynLib.h includes OgrePrerequisites.h, which in turn includes OgrePlatform.h, OgreStdHeaders.h and OgreMemoryAllocatorConfig.h; Which include a bunch of STL headers. Got much too entangled for me to handle.
You should never try to dig that deep at once. start by checking out the class definition and see what the class actually uses. it is quite obvious that this class uses very little of Ogres internal functions. oh and yes it works i played with it some more yesterday and as an example loaded up the functions SDL_SetError and SDL_GetError from sdl.dll and used called them and it worked
here is the way i did it:
1. fix obvius errors (like removing Ogre includes, inheritances, and preprocessor commands)
2. hit compile
3. fix errors (like Ogre::String and ogre log/exceptions)
4. goto 2 until no more errors
5. tests it out and fix runtime errors(actualy i never got any runtime errors.. i just had to figure out how to casts the void* returned from getSymbol to a usable function pointer)
common errors was
1. platform defines (sfml has these in it's system lib so i just switched to those
2. String (is a ogre typedef of std::string) so i replaced all String with std::string
3. exchanged all ogre exceptions and logger calls to std::cerr calls
4. it inherits from some kind of ogre allocator... which i do not know what it does and have no intentions to find out... so it got removed completely.. and i have noticed no errors.
learning how to refactor other peoples code is a great skill to know, especially if you want to start working as a programmer. (since changing/fixing other peoples code is what you will most likely do all day long
)