//---------------------------------------------------------------------
// b4dmsgrs.h	2-28-93	djf
// B4DMsgResource class definitiion
//
// This class hides the String Resource-Only DLL that holds the
// messages generated by the Message Compiler (MC.EXE) for B4D
// exception codes.
//---------------------------------------------------------------------

#if !defined( __B4DMSGRS_H )
#define __B4DMSGRS_H

//---------------------------------------------------------------------
// includes
//---------------------------------------------------------------------
#include <windows.h>

// this header is created by MC.EXE, which doesn't provide protection
#if !defined( __B4DMSG_H )
#include "b4dmsg.h"
#define __B4DMSG_H
#endif // !defined( __B4DMSG_H )

//---------------------------------------------------------------------
// constants
//---------------------------------------------------------------------

// This is also defined in B4DMSG.MC:  I hate to define it twice,
// but I don't see how else to do it.
const unsigned long B4D_FACILITY = 0xFFE;

class B4DMsgResource
{
public:
	B4DMsgResource();
	virtual ~B4DMsgResource();

	// get the message associated with exception code
	// returns a pointer to a static buffer
	const char *get
		( 
		DWORD 	dwExceptionCode,
		DWORD	*pArgs	// pointer to an array of args
		) const; 

private:

	HINSTANCE hLib;

}; // class B4DMsgResource

#endif // !defined( __B4DMSGRS_H )
