MAPINIT.C
#include <windows.h> 
#include "mapi.h" 
#include "mapinit.h" 
 
 
extern HANDLE hLibrary; 
 
int FAR PASCAL InitMAPI() 
{ 
 
  if ((hLibrary = LoadLibrary(MAPIDLL)) < (HANDLE)32) 
    return(ERR_LOAD_LIB); 
 
  if ((lpfnMAPILogon = (PFNMAPILOGON)GetProcAddress(hLibrary,SZ_MAPILOGON)) == NULL) 
    return(ERR_LOAD_FUNC); 
 
  if ((lpfnMAPILogoff= (PFNMAPILOGOFF)GetProcAddress(hLibrary,SZ_MAPILOGOFF)) == NULL) 
    return(ERR_LOAD_FUNC); 
 
  if ((lpfnMAPISendMail= (PFNMAPISENDMAIL)GetProcAddress(hLibrary,SZ_MAPISENDMAIL)) == NULL) 
    return(ERR_LOAD_FUNC); 
 
  if ((lpfnMAPISendDocuments= (PFNMAPISENDDOCUMENTS)GetProcAddress(hLibrary,SZ_MAPISENDDOC)) == NULL) 
    return(ERR_LOAD_FUNC); 
 
  if ((lpfnMAPIFindNext= (PFNMAPIFINDNEXT)GetProcAddress(hLibrary,SZ_MAPIFINDNEXT)) == NULL) 
    return(ERR_LOAD_FUNC); 
 
  if ((lpfnMAPIReadMail= (PFNMAPIREADMAIL)GetProcAddress(hLibrary,SZ_MAPIREADMAIL)) == NULL) 
    return(ERR_LOAD_FUNC); 
 
  if ((lpfnMAPISaveMail= (PFNMAPISAVEMAIL)GetProcAddress(hLibrary,SZ_MAPISAVEMAIL)) == NULL) 
    return(ERR_LOAD_FUNC); 
 
  if ((lpfnMAPIDeleteMail= (PFNMAPIDELETEMAIL)GetProcAddress(hLibrary,SZ_MAPIDELMAIL)) == NULL) 
    return(ERR_LOAD_FUNC); 
 
  if ((lpfnMAPIFreeBuffer= (PFNMAPIFREEBUFFER)GetProcAddress(hLibrary,SZ_MAPIFREEBUFFER)) == NULL) 
    return(ERR_LOAD_FUNC); 
 
  if ((lpfnMAPIAddress= (PFNMAPIADDRESS)GetProcAddress(hLibrary,SZ_MAPIADDRESS)) == NULL) 
    return(ERR_LOAD_FUNC); 
 
  if ((lpfnMAPIDetails= (PFNMAPIDETAILS)GetProcAddress(hLibrary,SZ_MAPIDETAILS)) == NULL) 
    return(ERR_LOAD_FUNC); 
 
  if ((lpfnMAPIResolveName= (PFNMAPIRESOLVENAME)GetProcAddress(hLibrary,SZ_MAPIRESOLVENAME)) == NULL) 
    return(ERR_LOAD_FUNC); 
 
  return(0); 
} 
 
 
int FAR PASCAL DeInitMAPI() 
{ 
 
  lpfnMAPILogon = NULL; 
  lpfnMAPILogoff= NULL; 
  lpfnMAPISendMail= NULL; 
  lpfnMAPISendDocuments= NULL; 
  lpfnMAPIFindNext= NULL; 
  lpfnMAPIReadMail= NULL; 
  lpfnMAPISaveMail= NULL; 
  lpfnMAPIDeleteMail= NULL; 
  lpfnMAPIFreeBuffer = NULL; 
  lpfnMAPIAddress= NULL; 
  lpfnMAPIDetails = NULL; 
  lpfnMAPIResolveName; 
 
  FreeLibrary(hLibrary); 
 
  return(0); 
}