   making a library file
  I realised the other day I've never made a DLL or lib file before so I've decided to try it out. I've looked for some C++ DLL tutorials and seen a whole lot of crazy stuff. For my test I'm making a basic System class and wont to be able to use it.I'm using VC++ 9 and am making a static library I've seen things like extern "c" __dllspec and things like that, so what do I need to do to make this work in other C++ projects?FSystem.h#ifndef __FSYSTEM_H__#define __FSYSTEM_H__#include <sdl/sdl.h>#pragma comment(lib, "SDL.lib")#pragma comment(lib, "SDLmain.lib")namespace Forge{class System{public:System();~System();bool Init(int width, int height, int bpp = 32);void Close();private:SDL_Surface* _screen;};}#endifFSystem.cpp#include "FSystem.h"using namespace Forge;System::System() : _screen(NULL){}System::~System(){}bool System::Init(int width, int height, int bpp){    if(SDL_Init(SDL_INIT_EVERYTHING) == -1)    {   return false; //output an error    }_screen = SDL_SetVideoMode(width, height, bpp, SDL_SWSURFACE);if(_screen == NULL)    {   return false;    }return true;}void System::Close(){SDL_Quit();}
  Nice tutorial is here:http://www.flipcode.com/archives/Creating_And_Using_DLLs.shtmlUse *With an Import Library*.   ;  Take a look onto the basics, too:http://msdn.microsoft.com/en-us/library/9yd93633.aspxWith best regardKimmi   ;  So in the instance of classes where does the extern "C" __declspec(dllexport) go? I put it with the function declarations and definitions and both caused errors.   ;  Try this:class __declspec(dllexport) foo{   ...For classes you don't need the extern c stuff. This statements marks the functions in brackets as c calls.Kimmi   