This repository has been archived on 2024-12-16. You can view files and clone it, but cannot push or open issues or pull requests.
CodeBlocksPortable/Borland/BCC55/Include/convdllc.h

57 lines
1.4 KiB
C++

// --convdllc.h----------------------------------------------------------------
//
// Conversion DLL cache object header file.
//
// Copyright (C) Microsoft Corp., 1986-1996. All rights reserved.
//
// ----------------------------------------------------------------------------
#ifndef _CONVDLLC_H
#pragma option push -b -a8 -pc -A- /*P_O_Push*/
#define _CONVDLLC_H
//$--CDllCache-----------------------------------------------------------------
//
// Object to maintain cache of most frequently used conversion
// DLLs
//
//-----------------------------------------------------------------------------
// Constants
// maximum number of cached DLLs maintained
const UINT nCachedDlls = 1024;
class CDllCache
{
public:
CDllCache(); // constructor
~CDllCache(); // destructor
// Loads the DLL and saves in the cache
HRESULT HrAdd(
IN LPWSTR lpwszDllName); // name of DLL to load and add
// Finds handle of DLL in the cache
HRESULT HrFind(
IN LPWSTR lpwszDllName, // name of DLL to find
OUT HINSTANCE * phInst); // pointer to DLL instance handle
private:
// structure for cached DLL entries
struct SDllCache
{
WCHAR lpwszName[MAX_PATH + 1]; // DLL name
HINSTANCE hInst; // DLL instance handle
};
// array of pointers to cached DLLs
SDllCache * m_rgSDllCache[nCachedDlls];
};
#pragma option pop /*P_O_Pop*/
#endif // _CONVDLLC_H