Click here to Skip to main content
15,886,027 members
Articles / Operating Systems / Windows

Platform Independent Coding - DLLs and SOs

Rate me:
Please Sign up or sign in to vote.
4.79/5 (86 votes)
28 Mar 2007CPOL9 min read 157.7K   2.3K   86  
If you want to write platform independent code, just read through the following article.
#if defined(_MSC_VER)
    #include <windows.h>	
#endif // Microsoft compiler 

#if defined(__GNUC__)
	#include "C:/cygwin/usr/include/dlfcn.h"
#endif // GNU compiler

/*

  #if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000


// Insert your headers here
/ Boby Thomas(RBIN/ECB-T1)
// 24-02-1981
// add.h 
//
#define WIN32_LEAN_AND_MEAN		// Exclude rarely-used stuff from Windows headers
*/

// The following ifdef block is the standard way of creating macros which make exporting 
// from a DLL simpler. All files within this DLL are compiled with the ADD_EXPORTS
// symbol defined on the command line. this symbol should not be defined on any project
// that uses this DLL. This way any other project whose source files include this file see 
// ADD_API functions as being imported from a DLL, wheras this DLL sees symbols
// defined with this macro as being exported.
//#ifdef ADD_EXPORTS
#define ADD_API __declspec(dllexport)
//#else
//#define ADD_API __declspec(dllimport)
//#endif

// This class is exported from the add.dll
class CAdd {
public:
	CAdd(void);
	// TODO: add your methods here.
};


extern "C" 
#if defined(_MSC_VER)
ADD_API 
#endif
int fnAdd(int, int);

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Software Developer (Senior) DWS
Australia Australia

Comments and Discussions