home *** CD-ROM | disk | FTP | other *** search
/ Supercompiler 1997 / SUPERCOMPILER97.iso / MS_VC.50 / VC / MFC / SRC / OLEIMPL.H < prev    next >
Encoding:
C/C++ Source or Header  |  1996-12-11  |  32.9 KB  |  918 lines

  1. // This is a part of the Microsoft Foundation Classes C++ library.
  2. // Copyright (C) 1992-1997 Microsoft Corporation
  3. // All rights reserved.
  4. //
  5. // This source code is only intended as a supplement to the
  6. // Microsoft Foundation Classes Reference and related
  7. // electronic documentation provided with the library.
  8. // See these sources for detailed information regarding the
  9. // Microsoft Foundation Classes product.
  10.  
  11. #undef AFX_DATA
  12. #define AFX_DATA AFX_OLE_DATA
  13.  
  14. /////////////////////////////////////////////////////////////////////////////
  15. // AFX_OLE_CALL - used to dynamically load the OLE32 library
  16.  
  17. #ifdef _AFXDLL
  18.  
  19. struct AFX_OLE_CALL
  20. {
  21.     // main OLE32.DLL entry points
  22.     HRESULT (STDAPICALLTYPE* pfnReadFmtUserTypeStg)(LPSTORAGE pstg,
  23.         CLIPFORMAT FAR* pcf, LPOLESTR FAR* lplpszUserType);
  24.     HRESULT (STDAPICALLTYPE* pfnReadClassStg)(LPSTORAGE pStg, CLSID FAR* pclsid);
  25.     HRESULT (STDAPICALLTYPE* pfnCreateFileMoniker)(LPCOLESTR lpszPathName,
  26.         LPMONIKER FAR* ppmk);
  27.     HRESULT (STDAPICALLTYPE* pfnStgIsStorageFile)(const OLECHAR * pwcsName);
  28.     HRESULT (STDAPICALLTYPE* pfnStgOpenStorage)(const OLECHAR * pwcsName,
  29.         IStorage *pstgPriority, DWORD grfMode, SNB snbExclude, DWORD reserved,
  30.         IStorage ** ppstgOpen);
  31.     HRESULT (STDAPICALLTYPE* pfnDoDragDrop)(LPDATAOBJECT pDataObj, LPDROPSOURCE pDropSource,
  32.         DWORD dwOKEffects, LPDWORD pdwEffect);
  33.     HRESULT (STDAPICALLTYPE* pfnCoLockObjectExternal)(LPUNKNOWN pUnk, BOOL fLock, BOOL fLastUnlockReleases);
  34.     HRESULT (STDAPICALLTYPE* pfnRegisterDragDrop)(HWND hwnd, LPDROPTARGET pDropTarget);
  35.     HRESULT (STDAPICALLTYPE* pfnOleRegGetUserType )(REFCLSID clsid, DWORD dwFormOfType,
  36.         LPOLESTR * pszUserType);
  37.     HRESULT (STDAPICALLTYPE* pfnStgCreateDocfile)(const OLECHAR * pwcsName, DWORD grfMode,
  38.         DWORD reserved, IStorage** ppstgOpen);
  39.     HRESULT (STDAPICALLTYPE* pfnRevokeDragDrop)(HWND hwnd);;
  40.     HRESULT (STDAPICALLTYPE* pfnCoRegisterClassObject)(REFCLSID rclsid, LPUNKNOWN pUnk,
  41.         DWORD dwClsContext, DWORD flags, LPDWORD lpdwRegister);
  42.     HRESULT (STDAPICALLTYPE* pfnCoRevokeClassObject)(DWORD dwRegister);
  43.     HRESULT (STDAPICALLTYPE* pfnOleTranslateAccelerator)(LPOLEINPLACEFRAME lpFrame,
  44.         LPOLEINPLACEFRAMEINFO lpFrameInfo, LPMSG lpmsg);
  45.     BOOL (STDAPICALLTYPE* pfnIsAccelerator)(HACCEL hAccel, INT cAccelEntries,
  46.         LPMSG lpMsg, WORD* lpwCmd);
  47.     HOLEMENU (STDAPICALLTYPE* pfnOleCreateMenuDescriptor)(HMENU hmenuCombined,
  48.         LPOLEMENUGROUPWIDTHS lpMenuWidths);
  49.     HRESULT (STDAPICALLTYPE* pfnOleDestroyMenuDescriptor )(HOLEMENU holemenu);
  50.     HRESULT (STDAPICALLTYPE* pfnGetRunningObjectTable)(DWORD reserved, LPRUNNINGOBJECTTABLE FAR* pprot);
  51.     HRESULT (STDAPICALLTYPE* pfnWriteClassStg)(LPSTORAGE pStg, REFCLSID rclsid);
  52.     HRESULT (STDAPICALLTYPE* pfnOleQueryLinkFromData)(LPDATAOBJECT pSrcDataObject);
  53.     HRESULT (STDAPICALLTYPE* pfnCoRegisterMessageFilter)(LPMESSAGEFILTER lpMessageFilter,
  54.         LPMESSAGEFILTER * lplpMessageFilter);
  55.     HRESULT (STDAPICALLTYPE* pfnCoCreateInstance)(REFCLSID rclsid, LPUNKNOWN * pUnkOuter,
  56.         DWORD dwClsContext, REFIID riid, LPVOID* ppv);
  57.     HRESULT (STDAPICALLTYPE* pfnCreateBindCtx)(DWORD reserved, LPBC FAR* ppbc);
  58.     HRESULT (STDAPICALLTYPE* pfnStringFromCLSID)(REFCLSID rclsid, LPOLESTR FAR* lplpsz);
  59.     HRESULT (STDAPICALLTYPE* pfnCoDisconnectObject)(LPUNKNOWN pUnk, DWORD dwReserved);
  60.     HRESULT (STDAPICALLTYPE* pfnOleRegEnumVerbs )(REFCLSID clsid, LPENUMOLEVERB FAR* ppenum);
  61.     void (STDAPICALLTYPE* pfnOleUninitialize)(void);
  62.     HRESULT (STDAPICALLTYPE* pfnCreateOleAdviseHolder)(LPOLEADVISEHOLDER FAR* ppOAHolder);
  63.     HRESULT (STDAPICALLTYPE* pfnCreateDataAdviseHolder)(LPDATAADVISEHOLDER FAR* ppDAHolder);
  64.     HRESULT (STDAPICALLTYPE* pfnOleGetAutoConvert)(REFCLSID clsidOld, LPCLSID pClsidNew);
  65.     HRESULT (STDAPICALLTYPE* pfnCoGetClassObject)(REFCLSID rclsid, DWORD dwClsContext,
  66.         LPVOID pvReserved, REFIID riid, LPVOID* ppv);
  67.     HRESULT (STDAPICALLTYPE* pfnOleCreateDefaultHandler)(REFCLSID clsid,
  68.         LPUNKNOWN pUnkOuter, REFIID riid, LPVOID* lplpvObj);
  69.     HRESULT (STDAPICALLTYPE* pfnCreateDataCache)(
  70.         LPUNKNOWN pUnkOuter, REFCLSID clsid, REFIID riid, LPVOID* lplpvObj);
  71.     HRESULT (STDAPICALLTYPE* pfnReadClassStm)(LPSTREAM pStm, CLSID FAR* pclsid);
  72.     HRESULT (STDAPICALLTYPE* pfnOleLoadFromStream)(LPSTREAM pStm, REFIID iidInterface, LPVOID FAR* ppvObj);
  73.     int (STDAPICALLTYPE* pfnStringFromGUID2)(REFGUID rguid, LPOLESTR lpsz, int cbMax);
  74.     void (STDAPICALLTYPE* pfnCoUninitialize)(void);
  75.     HRESULT (STDAPICALLTYPE* pfnCoInitialize)(LPVOID pvReserved);
  76.     HRESULT (STDAPICALLTYPE* pfnOleInitialize)(LPVOID pvReserved);
  77.     void (STDAPICALLTYPE* pfnCoFreeUnusedLibraries)(void);
  78.     HRESULT (STDAPICALLTYPE* pfnOleCreateFromData)(LPDATAOBJECT pSrcDataObj,
  79.         REFIID riid, DWORD renderopt, LPFORMATETC pFormatEtc,
  80.         LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID* ppvObj);
  81.     HRESULT (STDAPICALLTYPE* pfnOleSetContainedObject)(LPUNKNOWN pUnknown, BOOL fContained);
  82.     HRESULT (STDAPICALLTYPE* pfnOleLockRunning)(LPUNKNOWN pUnknown, BOOL fLock, BOOL fLastUnlockCloses);
  83.     LPVOID (STDAPICALLTYPE* pfnCoTaskMemAlloc)(ULONG cb);
  84.     HRESULT (STDAPICALLTYPE* pfnCLSIDFromString)(LPOLESTR lpsz, LPCLSID pclsid);
  85.     HRESULT (STDAPICALLTYPE* pfnCLSIDFromProgID )(LPCOLESTR lpszProgID, LPCLSID lpclsid);
  86.     HRESULT (STDAPICALLTYPE* pfnOleIsCurrentClipboard)(LPDATAOBJECT pDataObj);
  87.     HRESULT (STDAPICALLTYPE* pfnOleFlushClipboard)(void);
  88.     HRESULT (STDAPICALLTYPE* pfnOleSetClipboard)(LPDATAOBJECT pDataObj);
  89.     BOOL (STDAPICALLTYPE* pfnOleIsRunning)(LPOLEOBJECT pObject);;
  90.     HRESULT (STDAPICALLTYPE* pfnOleRun)(LPUNKNOWN pUnknown);
  91.     HRESULT (STDAPICALLTYPE* pfnOleGetClipboard)(LPDATAOBJECT FAR* ppDataObj);
  92.     HRESULT (STDAPICALLTYPE* pfnCoTreatAsClass)(REFCLSID clsidOld, REFCLSID clsidNew);
  93.     HRESULT (STDAPICALLTYPE* pfnOleQueryCreateFromData)(LPDATAOBJECT pSrcDataObject);
  94.     HRESULT (STDAPICALLTYPE* pfnOleSetMenuDescriptor )(HOLEMENU holemenu,
  95.         HWND hwndFrame, HWND hwndActiveObject, LPOLEINPLACEFRAME lpFrame,
  96.         LPOLEINPLACEACTIVEOBJECT lpActiveObj);
  97.     HRESULT (STDAPICALLTYPE* pfnCreateItemMoniker)(LPCOLESTR lpszDelim,
  98.         LPCOLESTR lpszItem, LPMONIKER* ppmk);
  99.     HRESULT (STDAPICALLTYPE* pfnCreateGenericComposite)(LPMONIKER pmkFirst,
  100.         LPMONIKER pmkRest, LPMONIKER* ppmkComposite);
  101.     HRESULT (STDAPICALLTYPE* pfnCreateStreamOnHGlobal)(HGLOBAL hGlobal,
  102.         BOOL fDeleteOnRelease, LPSTREAM* ppstm);
  103.     HRESULT (STDAPICALLTYPE* pfnOleSaveToStream)(LPPERSISTSTREAM pPStm, LPSTREAM pStm);
  104.     HRESULT (STDAPICALLTYPE* pfnWriteClassStm)(LPSTREAM pStm, REFCLSID rclsid);
  105.     void (STDAPICALLTYPE* pfnCoTaskMemFree)(LPVOID pv);
  106.     HGLOBAL (STDAPICALLTYPE* pfnOleGetIconOfClass)(REFCLSID rclsid, LPOLESTR lpszLabel,
  107.         BOOL fUseTypeAsLabel);
  108.     void (STDAPICALLTYPE* pfnReleaseStgMedium)(LPSTGMEDIUM);
  109.     HRESULT (STDAPICALLTYPE* pfnGetHGlobalFromILockBytes )(LPLOCKBYTES plkbyt, HGLOBAL FAR* phglobal);
  110.     HRESULT (STDAPICALLTYPE* pfnStgOpenStorageOnILockBytes)(LPLOCKBYTES plkbyt,
  111.         LPSTORAGE pstgPriority, DWORD grfMode, SNB snbExclude, DWORD reserved,
  112.         LPSTORAGE* ppstgOpen);
  113.     HRESULT (STDAPICALLTYPE* pfnCreateILockBytesOnHGlobal)(HGLOBAL hGlobal,
  114.         BOOL fDeleteOnRelease, LPLOCKBYTES* pplkbyt);
  115.     HRESULT (STDAPICALLTYPE* pfnStgCreateDocfileOnILockBytes)(LPLOCKBYTES plkbyt,
  116.         DWORD grfMode, DWORD reserved, LPSTORAGE* ppstgOpen);
  117.     HRESULT (STDAPICALLTYPE* pfnOleSave)(LPPERSISTSTORAGE pPS, LPSTORAGE pStg, BOOL fSameAsLoad);
  118.     HRESULT (STDAPICALLTYPE* pfnOleLoad)(LPSTORAGE pStg, REFIID riid,
  119.         LPOLECLIENTSITE pClientSite, LPVOID* ppvObj);
  120.     HRESULT (STDAPICALLTYPE* pfnOleCreate)(REFCLSID rclsid, REFIID riid,
  121.         DWORD renderopt, LPFORMATETC pFormatEtc, LPOLECLIENTSITE pClientSite,
  122.         LPSTORAGE pStg, LPVOID* ppvObj);
  123.     HRESULT (STDAPICALLTYPE* pfnOleCreateLinkToFile)(LPCOLESTR lpszFileName,
  124.         REFIID riid, DWORD renderopt, LPFORMATETC lpFormatEtc,
  125.         LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID* ppvObj);
  126.     HRESULT (STDAPICALLTYPE* pfnOleCreateFromFile)(REFCLSID rclsid,
  127.         LPCOLESTR lpszFileName, REFIID riid, DWORD renderopt,
  128.         LPFORMATETC pFormatEtc, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg,
  129.         LPVOID* ppvObj);
  130.     HRESULT (STDAPICALLTYPE* pfnOleCreateStaticFromData)(LPDATAOBJECT pSrcDataObj,
  131.         REFIID riid, DWORD renderopt, LPFORMATETC pFormatEtc,
  132.         LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID* ppvObj);
  133.     HRESULT (STDAPICALLTYPE* pfnOleCreateLinkFromData)(LPDATAOBJECT pSrcDataObj,
  134.         REFIID riid, DWORD renderopt, LPFORMATETC pFormatEtc,
  135.         LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID* ppvObj);
  136.     HRESULT (STDAPICALLTYPE* pfnSetConvertStg)(LPSTORAGE pStg, BOOL fConvert);
  137.     HANDLE (STDAPICALLTYPE* pfnOleDuplicateData)(HANDLE hSrc, CLIPFORMAT cfFormat,
  138.         UINT uiFlags);
  139.     HRESULT (STDAPICALLTYPE* pfnWriteFmtUserTypeStg )(LPSTORAGE pstg, CLIPFORMAT cf, LPOLESTR lpszUserType);
  140.     HRESULT (STDAPICALLTYPE* pfnOleRegGetMiscStatus)(REFCLSID clsid, DWORD dwAspect,
  141.         DWORD* pdwStatus);
  142.     HRESULT (STDAPICALLTYPE* pfnCoGetMalloc)(DWORD dwMemContext, LPMALLOC * ppMalloc);
  143.     HRESULT (STDAPICALLTYPE* pfnStgIsStorageILockBytes)(LPLOCKBYTES plkbyt);
  144.  
  145.     // OLEAUT32.DLL entry points
  146.     void (STDAPICALLTYPE* pfnSysFreeString)(BSTR);
  147. #if !defined(_MAC)
  148.     BSTR (STDAPICALLTYPE* pfnSysAllocStringByteLen)(const char FAR* psz,
  149.         unsigned int len);
  150. #endif
  151.     HRESULT (STDAPICALLTYPE* pfnVariantCopy)(VARIANTARG FAR* pvargDest,
  152.         VARIANTARG FAR* pvargSrc);
  153.     HRESULT (STDAPICALLTYPE* pfnVariantClear)(VARIANTARG FAR* pvarg);
  154.     HRESULT (STDAPICALLTYPE* pfnVariantChangeType)(VARIANTARG FAR* pvargDest,
  155.         VARIANTARG FAR* pvarSrc, unsigned short wFlags, VARTYPE vt);
  156.     BSTR (STDAPICALLTYPE* pfnSysAllocStringLen)(const OLECHAR FAR*,
  157.         unsigned int);
  158.     unsigned int (STDAPICALLTYPE* pfnSysStringLen)(BSTR);
  159.     int (STDAPICALLTYPE* pfnSysReAllocStringLen)(BSTR FAR*, const OLECHAR FAR*,
  160.         unsigned int);
  161.     BSTR (STDAPICALLTYPE* pfnSysAllocString)(const OLECHAR FAR*);
  162. #if !defined(_MAC)
  163.     unsigned int (STDAPICALLTYPE* pfnSysStringByteLen)(BSTR bstr);
  164. #endif
  165.     HRESULT (STDAPICALLTYPE* pfnVarCyFromStr)(OLECHAR FAR* strIn, LCID lcid,
  166.         unsigned long dwFlags, CY FAR* pcyOut);
  167.     HRESULT (STDAPICALLTYPE* pfnVarBstrFromCy)(CY cyIn, LCID lcid,
  168.         unsigned long dwFlags, BSTR FAR* pbstrOut);
  169.     HRESULT (STDAPICALLTYPE* pfnVarDateFromStr)(OLECHAR FAR* strIn, LCID lcid,
  170.         unsigned long dwFlags, DATE FAR* pdateOut);
  171.     HRESULT (STDAPICALLTYPE* pfnVarBstrFromDate)(DATE dateIn, LCID lcid,
  172.         unsigned long dwFlags, BSTR FAR* pbstrOut);
  173.     HRESULT (STDAPICALLTYPE* pfnLoadTypeLib)(const OLECHAR FAR *szFile,
  174.         ITypeLib FAR* FAR* pptlib);
  175.     HRESULT (STDAPICALLTYPE* pfnLoadRegTypeLib)(REFGUID guid,
  176.         WORD wVerMajor, WORD wVerMinor, LCID lcid, ITypeLib FAR* FAR* pptlib);
  177.     HRESULT (STDAPICALLTYPE* pfnRegisterTypeLib)(ITypeLib FAR* ptlib,
  178.         OLECHAR FAR *szFullPath, OLECHAR FAR *szHelpDir);
  179.     int (STDAPICALLTYPE* pfnDosDateTimeToVariantTime)(unsigned short wDosDate,
  180.         unsigned short wDosTime, double FAR* pvtime);
  181.     SAFEARRAY FAR* (STDAPICALLTYPE* pfnSafeArrayCreate)(VARTYPE vt,
  182.         unsigned int cDims, SAFEARRAYBOUND FAR* rgsabound);
  183.     HRESULT (STDAPICALLTYPE* pfnSafeArrayRedim)(SAFEARRAY FAR* psa,
  184.         SAFEARRAYBOUND FAR* psaboundNew);
  185.     HRESULT (STDAPICALLTYPE* pfnSafeArrayAccessData)(SAFEARRAY FAR* psa,
  186.         void HUGEP* FAR* ppvData);
  187.     HRESULT (STDAPICALLTYPE* pfnSafeArrayUnaccessData)(SAFEARRAY FAR* psa);
  188.     HRESULT (STDAPICALLTYPE* pfnSafeArrayGetUBound)(SAFEARRAY FAR* psa,
  189.         unsigned int nDim, long FAR* plUbound);
  190.     HRESULT (STDAPICALLTYPE* pfnSafeArrayGetLBound)(SAFEARRAY FAR* psa,
  191.         unsigned int nDim, long FAR* plLbound);
  192.     unsigned int (STDAPICALLTYPE* pfnSafeArrayGetElemsize)(SAFEARRAY FAR* psa);
  193.     unsigned int (STDAPICALLTYPE* pfnSafeArrayGetDim)(SAFEARRAY FAR* psa);
  194.     HRESULT (STDAPICALLTYPE* pfnSafeArrayCopy)(SAFEARRAY FAR* psa,
  195.         SAFEARRAY FAR* FAR* ppsaOut);
  196.     HRESULT (STDAPICALLTYPE* pfnSafeArrayAllocData)(SAFEARRAY FAR* psa);
  197.     HRESULT (STDAPICALLTYPE* pfnSafeArrayAllocDescriptor)(unsigned int cDims,
  198.         SAFEARRAY FAR* FAR* ppsaOut);
  199.     HRESULT (STDAPICALLTYPE* pfnSafeArrayGetElement)(SAFEARRAY FAR* psa,
  200.         long FAR* rgIndices, void FAR* pvData);
  201.     HRESULT (STDAPICALLTYPE* pfnSafeArrayPutElement)(SAFEARRAY FAR* psa,
  202.         long FAR* rgIndices, void FAR* pvData);
  203.     HRESULT (STDAPICALLTYPE* pfnSafeArrayLock)(SAFEARRAY FAR* psa);
  204.     HRESULT (STDAPICALLTYPE* pfnSafeArrayUnlock)(SAFEARRAY FAR* psa);
  205.     HRESULT (STDAPICALLTYPE* pfnSafeArrayDestroy)(SAFEARRAY FAR* psa);
  206.     HRESULT (STDAPICALLTYPE* pfnSafeArrayDestroyData)(SAFEARRAY FAR* psa);
  207.     HRESULT (STDAPICALLTYPE* pfnSafeArrayDestroyDescriptor)(SAFEARRAY FAR* psa);
  208.     HRESULT (STDAPICALLTYPE* pfnSafeArrayPtrOfIndex)(SAFEARRAY FAR* psa,
  209.         long FAR* rgIndices, void HUGEP* FAR* ppvData);
  210. #if defined(_MAC) && defined(MACOCX)
  211.     HRESULT (STDAPICALLTYPE* pfnLoadTypeLibFSp)(const void *pfsspec, ITypeLib FAR* FAR* pptlib);
  212.     HRESULT (STDAPICALLTYPE* pfnRegisterTypeLibFolder)(OLECHAR FAR* szFullPath);
  213.     HRESULT (STDAPICALLTYPE* pfnQueryTypeLibFolder)(LPBSTR pbstr);
  214.     LCID (WINAPI* pfnGetUserDefaultLCID)(void);
  215. #endif
  216.  
  217.     // OLEDLG.DLL entry points
  218.     BOOL (STDAPICALLTYPE* pfnOleUIAddVerbMenu)(LPOLEOBJECT lpOleObj, LPCTSTR lpszShortType,
  219.         HMENU hMenu, UINT uPos, UINT uIDVerbMin, UINT uIDVerbMax,
  220.         BOOL bAddConvert, UINT idConvert, HMENU FAR *lphMenu);
  221.     UINT (STDAPICALLTYPE* pfnOleUIBusy)(LPOLEUIBUSY);
  222.     UINT (STDAPICALLTYPE* pfnOleUIChangeIcon)(LPOLEUICHANGEICON);
  223.     UINT (STDAPICALLTYPE* pfnOleUIChangeSource)(LPOLEUICHANGESOURCE);
  224.     UINT (STDAPICALLTYPE* pfnOleUIConvert)(LPOLEUICONVERT);
  225.     UINT (STDAPICALLTYPE* pfnOleUIEditLinks)(LPOLEUIEDITLINKS);
  226.     UINT (STDAPICALLTYPE* pfnOleUIInsertObject)(LPOLEUIINSERTOBJECT);
  227.     UINT (STDAPICALLTYPE* pfnOleUIObjectProperties)(LPOLEUIOBJECTPROPS);
  228.     UINT (STDAPICALLTYPE* pfnOleUIPasteSpecial)(LPOLEUIPASTESPECIAL);
  229.     BOOL (STDAPICALLTYPE* pfnOleUIUpdateLinks)(LPOLEUILINKCONTAINER lpOleUILinkCntr,
  230.         HWND hwndParent, LPTSTR lpszTitle, int cLinks);
  231.  
  232.     // Special Mac registry entry points
  233. #ifdef _MAC
  234.     LONG (APIENTRY* pfnRegCloseKey)(HKEY hKey);
  235.     LONG (APIENTRY* pfnRegOpenKey)(HKEY hKey, LPCSTR lpSubKey, PHKEY phkResult);
  236.     LONG (APIENTRY* pfnRegSetValue)(HKEY hKey, LPCSTR lpSubKey, DWORD dwType,
  237.         LPCSTR lpData, DWORD cbData);
  238.     LONG (APIENTRY* pfnRegSetValueEx)(HKEY hKey, LPCTSTR lpValueName,
  239.         DWORD Reserved, DWORD dwType, CONST BYTE* lpData, DWORD cbData);
  240.     LONG (APIENTRY* pfnRegQueryValue)(HKEY hKey, LPCSTR lpSubKey, LPSTR lpValue,
  241.         PLONG lpcbValue);
  242.     LONG (APIENTRY* pfnRegQueryValueEx)(HKEY hKey, LPCTSTR lpValueName,
  243.         LPDWORD lpReserved, LPDWORD lpType, LPBYTE lpData, LPDWORD lpcbData);
  244.     LONG (APIENTRY* pfnRegEnumKey)(HKEY hKey, DWORD dwIndex, LPTSTR lpName,
  245.         DWORD cbName);
  246.     LONG (APIENTRY* pfnRegDeleteKey)(HKEY hKey, LPCTSTR lpSubKey);
  247.     LONG (APIENTRY* pfnRegDeleteValue)(HKEY hKey, LPCTSTR lpValueName);
  248.     LONG (APIENTRY* pfnRegCreateKey)(HKEY hKey, LPCTSTR lpSubKey,
  249.         PHKEY phkResult);
  250. #endif
  251. };
  252.  
  253. #ifndef _MAC
  254.  
  255. /////////////////////////////////////////////////////////////////////////////
  256. // AFX_URLMON_CALL - used to dynamically load URLMON.DLL
  257.  
  258. #ifndef __urlmon_h__
  259. #include <urlmon.h>
  260. #endif
  261.  
  262. struct AFX_URLMON_CALL
  263. {
  264.     HRESULT (STDAPICALLTYPE* pfnRegisterBindStatusCallback)(LPBC pBC,
  265.         IBindStatusCallback *pBSCb, IBindStatusCallback **pBSCbPrev, DWORD dwReserved);
  266.     HRESULT (STDAPICALLTYPE* pfnRevokeBindStatusCallback)(LPBC pBC,
  267.         IBindStatusCallback *pBSCb);
  268.     HRESULT (STDAPICALLTYPE* pfnIsAsyncMoniker)(IMoniker* pmk);
  269.     HRESULT (STDAPICALLTYPE* pfnCreateURLMoniker)(LPMONIKER pMkCtx, LPCWSTR szURL, LPMONIKER FAR * ppmk);
  270.     HRESULT (STDAPICALLTYPE* pfnCreateAsyncBindCtx)(DWORD dwReserved, IBindStatusCallback *pBSCb,
  271.         IEnumFORMATETC *pEFetc, IBindCtx **ppBC);
  272. };
  273.  
  274. extern AFX_DATA AFX_URLMON_CALL _afxUrlMon;
  275.  
  276. /////////////////////////////////////////////////////////////////////////////
  277. // macros for AFX_URLMON_CALL access
  278.  
  279. #ifdef RegisterBindStatusCallback
  280. #undef RegisterBindStatusCallback
  281. #endif
  282. #define RegisterBindStatusCallback _afxUrlMon.pfnRegisterBindStatusCallback
  283.  
  284. #ifdef RevokeBindStatusCallback
  285. #undef RevokeBindStatusCallback
  286. #endif
  287. #define RevokeBindStatusCallback _afxUrlMon.pfnRevokeBindStatusCallback
  288.  
  289. #ifdef IsAsyncMoniker
  290. #undef IsAsyncMoniker
  291. #endif
  292. #define IsAsyncMoniker _afxUrlMon.pfnIsAsyncMoniker
  293.  
  294. #ifdef CreateURLMoniker
  295. #undef CreateURLMoniker
  296. #endif
  297. #define CreateURLMoniker _afxUrlMon.pfnCreateURLMoniker
  298.  
  299. #ifdef CreateAsyncBindCtx
  300. #undef CreateAsyncBindCtx
  301. #endif
  302. #define CreateAsyncBindCtx _afxUrlMon.pfnCreateAsyncBindCtx
  303.  
  304. #endif //!_MAC
  305.  
  306. extern AFX_DATA AFX_OLE_CALL _afxOLE;
  307.  
  308. // OLE32.DLL mappings
  309. #ifdef ReadFmtUserTypeStg
  310. #undef ReadFmtUserTypeStg
  311. #endif
  312. #define ReadFmtUserTypeStg  _afxOLE.pfnReadFmtUserTypeStg
  313. #ifdef ReadClassStg
  314. #undef ReadClassStg
  315. #endif
  316. #define ReadClassStg    _afxOLE.pfnReadClassStg
  317. #ifdef CreateFileMoniker
  318. #undef CreateFileMoniker
  319. #endif
  320. #define CreateFileMoniker   _afxOLE.pfnCreateFileMoniker
  321. #ifdef StgIsStorageFile
  322. #undef StgIsStorageFile
  323. #endif
  324. #define StgIsStorageFile    _afxOLE.pfnStgIsStorageFile
  325. #ifdef StgOpenStorage
  326. #undef StgOpenStorage
  327. #endif
  328. #define StgOpenStorage  _afxOLE.pfnStgOpenStorage
  329.  
  330. #if defined(_AFX_OLE_IMPL)
  331. //DoDragDrop
  332. inline HRESULT STDAPICALLTYPE DoDragDrop(LPDATAOBJECT pDataObj,
  333.     LPDROPSOURCE pDropSource, DWORD dwOKEffects, LPDWORD pdwEffect)
  334. {
  335.     return _afxOLE.pfnDoDragDrop(pDataObj, pDropSource, dwOKEffects,
  336.         pdwEffect);
  337. }
  338. #endif
  339.  
  340. #ifdef CoLockObjectExternal
  341. #undef CoLockObjectExternal
  342. #endif
  343. #define CoLockObjectExternal    _afxOLE.pfnCoLockObjectExternal
  344. #ifdef RegisterDragDrop
  345. #undef RegisterDragDrop
  346. #endif
  347. #define RegisterDragDrop    _afxOLE.pfnRegisterDragDrop
  348. #ifdef OleRegGetUserType
  349. #undef OleRegGetUserType
  350. #endif
  351. #define OleRegGetUserType   _afxOLE.pfnOleRegGetUserType
  352. #ifdef StgCreateDocfile
  353. #undef StgCreateDocfile
  354. #endif
  355. #define StgCreateDocfile    _afxOLE.pfnStgCreateDocfile
  356. #ifdef RevokeDragDrop
  357. #undef RevokeDragDrop
  358. #endif
  359. #define RevokeDragDrop  _afxOLE.pfnRevokeDragDrop
  360. #ifdef CoRegisterClassObject
  361. #undef CoRegisterClassObject
  362. #endif
  363. #define CoRegisterClassObject   _afxOLE.pfnCoRegisterClassObject
  364. #ifdef CoRevokeClassObject
  365. #undef CoRevokeClassObject
  366. #endif
  367. #define CoRevokeClassObject _afxOLE.pfnCoRevokeClassObject
  368. #ifdef OleTranslateAccelerator
  369. #undef OleTranslateAccelerator
  370. #endif
  371. #define OleTranslateAccelerator _afxOLE.pfnOleTranslateAccelerator
  372. #ifdef IsAccelerator
  373. #undef IsAccelerator
  374. #endif
  375. #define IsAccelerator   _afxOLE.pfnIsAccelerator
  376. #ifdef OleCreateMenuDescriptor
  377. #undef OleCreateMenuDescriptor
  378. #endif
  379. #define OleCreateMenuDescriptor _afxOLE.pfnOleCreateMenuDescriptor
  380. #ifdef OleDestroyMenuDescriptor
  381. #undef OleDestroyMenuDescriptor
  382. #endif
  383. #define OleDestroyMenuDescriptor    _afxOLE.pfnOleDestroyMenuDescriptor
  384. #ifdef GetRunningObjectTable
  385. #undef GetRunningObjectTable
  386. #endif
  387. #define GetRunningObjectTable   _afxOLE.pfnGetRunningObjectTable
  388. #ifdef WriteClassStg
  389. #undef WriteClassStg
  390. #endif
  391. #define WriteClassStg   _afxOLE.pfnWriteClassStg
  392. #ifdef OleQueryLinkFromData
  393. #undef OleQueryLinkFromData
  394. #endif
  395. #define OleQueryLinkFromData    _afxOLE.pfnOleQueryLinkFromData
  396. #ifdef CoRegisterMessageFilter
  397. #undef CoRegisterMessageFilter
  398. #endif
  399. #define CoRegisterMessageFilter _afxOLE.pfnCoRegisterMessageFilter
  400. #ifdef CoCreateInstance
  401. #undef CoCreateInstance
  402. #endif
  403. #define CoCreateInstance    _afxOLE.pfnCoCreateInstance
  404. #ifdef CreateBindCtx
  405. #undef CreateBindCtx
  406. #endif
  407. #define CreateBindCtx   _afxOLE.pfnCreateBindCtx
  408. #ifdef StringFromCLSID
  409. #undef StringFromCLSID
  410. #endif
  411. #define StringFromCLSID _afxOLE.pfnStringFromCLSID
  412. #ifdef CoDisconnectObject
  413. #undef CoDisconnectObject
  414. #endif
  415. #define CoDisconnectObject  _afxOLE.pfnCoDisconnectObject
  416. #ifdef OleRegEnumVerbs
  417. #undef OleRegEnumVerbs
  418. #endif
  419. #define OleRegEnumVerbs _afxOLE.pfnOleRegEnumVerbs
  420. #ifdef OleUninitialize
  421. #undef OleUninitialize
  422. #endif
  423. #define OleUninitialize _afxOLE.pfnOleUninitialize
  424. #ifdef CreateOleAdviseHolder
  425. #undef CreateOleAdviseHolder
  426. #endif
  427. #define CreateOleAdviseHolder   _afxOLE.pfnCreateOleAdviseHolder
  428. #ifdef CreateDataAdviseHolder
  429. #undef CreateDataAdviseHolder
  430. #endif
  431. #define CreateDataAdviseHolder  _afxOLE.pfnCreateDataAdviseHolder
  432. #ifdef OleGetAutoConvert
  433. #undef OleGetAutoConvert
  434. #endif
  435. #define OleGetAutoConvert   _afxOLE.pfnOleGetAutoConvert
  436. #ifdef CoGetClassObject
  437. #undef CoGetClassObject
  438. #endif
  439. #define CoGetClassObject    _afxOLE.pfnCoGetClassObject
  440. #ifdef OleCreateDefaultHandler
  441. #undef OleCreateDefaultHandler
  442. #endif
  443. #define OleCreateDefaultHandler _afxOLE.pfnOleCreateDefaultHandler
  444. #ifdef CreateDataCache
  445. #undef CreateDataCache
  446. #endif
  447. #define CreateDataCache _afxOLE.pfnCreateDataCache
  448. #ifdef ReadClassStm
  449. #undef ReadClassStm
  450. #endif
  451. #define ReadClassStm    _afxOLE.pfnReadClassStm
  452. #ifdef OleLoadFromStream
  453. #undef OleLoadFromStream
  454. #endif
  455. #define OleLoadFromStream   _afxOLE.pfnOleLoadFromStream
  456. #ifdef StringFromGUID2
  457. #undef StringFromGUID2
  458. #endif
  459. #define StringFromGUID2 _afxOLE.pfnStringFromGUID2
  460. #ifdef CoUninitialize
  461. #undef CoUninitialize
  462. #endif
  463. #define CoUninitialize  _afxOLE.pfnCoUninitialize
  464. #ifdef CoInitialize
  465. #undef CoInitialize
  466. #endif
  467. #define CoInitialize    _afxOLE.pfnCoInitialize
  468. #ifdef OleInitialize
  469. #undef OleInitialize
  470. #endif
  471. #define OleInitialize   _afxOLE.pfnOleInitialize
  472. #ifdef CoFreeUnusedLibraries
  473. #undef CoFreeUnusedLibraries
  474. #endif
  475. #define CoFreeUnusedLibraries   _afxOLE.pfnCoFreeUnusedLibraries
  476. #ifdef OleCreateFromData
  477. #undef OleCreateFromData
  478. #endif
  479. #define OleCreateFromData   _afxOLE.pfnOleCreateFromData
  480. #ifdef OleSetContainedObject
  481. #undef OleSetContainedObject
  482. #endif
  483. #define OleSetContainedObject   _afxOLE.pfnOleSetContainedObject
  484. #ifdef OleLockRunning
  485. #undef OleLockRunning
  486. #endif
  487. #define OleLockRunning  _afxOLE.pfnOleLockRunning
  488. #ifdef CoTaskMemAlloc
  489. #undef CoTaskMemAlloc
  490. #endif
  491. #define CoTaskMemAlloc  _afxOLE.pfnCoTaskMemAlloc
  492. #ifdef CLSIDFromString
  493. #undef CLSIDFromString
  494. #endif
  495. #define CLSIDFromString _afxOLE.pfnCLSIDFromString
  496. #ifdef CLSIDFromProgID
  497. #undef CLSIDFromProgID
  498. #endif
  499. #define CLSIDFromProgID _afxOLE.pfnCLSIDFromProgID
  500. #ifdef OleIsCurrentClipboard
  501. #undef OleIsCurrentClipboard
  502. #endif
  503. #define OleIsCurrentClipboard   _afxOLE.pfnOleIsCurrentClipboard
  504. #ifdef OleFlushClipboard
  505. #undef OleFlushClipboard
  506. #endif
  507. #define OleFlushClipboard   _afxOLE.pfnOleFlushClipboard
  508. #ifdef OleSetClipboard
  509. #undef OleSetClipboard
  510. #endif
  511. #define OleSetClipboard _afxOLE.pfnOleSetClipboard
  512. #ifdef OleIsRunning
  513. #undef OleIsRunning
  514. #endif
  515. #define OleIsRunning    _afxOLE.pfnOleIsRunning
  516. #ifdef OleRun
  517. #undef OleRun
  518. #endif
  519. #define OleRun  _afxOLE.pfnOleRun
  520. #ifdef OleGetClipboard
  521. #undef OleGetClipboard
  522. #endif
  523. #define OleGetClipboard _afxOLE.pfnOleGetClipboard
  524. #ifdef CoTreatAsClass
  525. #undef CoTreatAsClass
  526. #endif
  527. #define CoTreatAsClass  _afxOLE.pfnCoTreatAsClass
  528. #ifdef OleQueryCreateFromData
  529. #undef OleQueryCreateFromData
  530. #endif
  531. #define OleQueryCreateFromData  _afxOLE.pfnOleQueryCreateFromData
  532. #ifdef OleSetMenuDescriptor
  533. #undef OleSetMenuDescriptor
  534. #endif
  535. #define OleSetMenuDescriptor    _afxOLE.pfnOleSetMenuDescriptor
  536. #ifdef CreateItemMoniker
  537. #undef CreateItemMoniker
  538. #endif
  539. #define CreateItemMoniker   _afxOLE.pfnCreateItemMoniker
  540. #ifdef CreateGenericComposite
  541. #undef CreateGenericComposite
  542. #endif
  543. #define CreateGenericComposite  _afxOLE.pfnCreateGenericComposite
  544. #ifdef CreateStreamOnHGlobal
  545. #undef CreateStreamOnHGlobal
  546. #endif
  547. #define CreateStreamOnHGlobal   _afxOLE.pfnCreateStreamOnHGlobal
  548. #ifdef OleSaveToStream
  549. #undef OleSaveToStream
  550. #endif
  551. #define OleSaveToStream _afxOLE.pfnOleSaveToStream
  552. #ifdef WriteClassStm
  553. #undef WriteClassStm
  554. #endif
  555. #define WriteClassStm   _afxOLE.pfnWriteClassStm
  556. #ifdef CoTaskMemFree
  557. #undef CoTaskMemFree
  558. #endif
  559. #define CoTaskMemFree   _afxOLE.pfnCoTaskMemFree
  560. #ifdef OleGetIconOfClass
  561. #undef OleGetIconOfClass
  562. #endif
  563. #define OleGetIconOfClass   _afxOLE.pfnOleGetIconOfClass
  564. #ifdef ReleaseStgMedium
  565. #undef ReleaseStgMedium
  566. #endif
  567. #define ReleaseStgMedium    _afxOLE.pfnReleaseStgMedium
  568. #ifdef GetHGlobalFromILockBytes
  569. #undef GetHGlobalFromILockBytes
  570. #endif
  571. #define GetHGlobalFromILockBytes    _afxOLE.pfnGetHGlobalFromILockBytes
  572. #ifdef StgOpenStorageOnILockBytes
  573. #undef StgOpenStorageOnILockBytes
  574. #endif
  575. #define StgOpenStorageOnILockBytes  _afxOLE.pfnStgOpenStorageOnILockBytes
  576. #ifdef CreateILockBytesOnHGlobal
  577. #undef CreateILockBytesOnHGlobal
  578. #endif
  579. #define CreateILockBytesOnHGlobal   _afxOLE.pfnCreateILockBytesOnHGlobal
  580. #ifdef StgCreateDocfileOnILockBytes
  581. #undef StgCreateDocfileOnILockBytes
  582. #endif
  583. #define StgCreateDocfileOnILockBytes    _afxOLE.pfnStgCreateDocfileOnILockBytes
  584. #ifdef OleSave
  585. #undef OleSave
  586. #endif
  587. #define OleSave _afxOLE.pfnOleSave
  588. #ifdef OleLoad
  589. #undef OleLoad
  590. #endif
  591. #define OleLoad _afxOLE.pfnOleLoad
  592. #ifdef OleCreate
  593. #undef OleCreate
  594. #endif
  595. #define OleCreate   _afxOLE.pfnOleCreate
  596. #ifdef OleCreateLinkToFile
  597. #undef OleCreateLinkToFile
  598. #endif
  599. #define OleCreateLinkToFile _afxOLE.pfnOleCreateLinkToFile
  600. #ifdef OleCreateFromFile
  601. #undef OleCreateFromFile
  602. #endif
  603. #define OleCreateFromFile   _afxOLE.pfnOleCreateFromFile
  604. #ifdef OleCreateStaticFromData
  605. #undef OleCreateStaticFromData
  606. #endif
  607. #define OleCreateStaticFromData _afxOLE.pfnOleCreateStaticFromData
  608. #ifdef OleCreateLinkFromData
  609. #undef OleCreateLinkFromData
  610. #endif
  611. #define OleCreateLinkFromData   _afxOLE.pfnOleCreateLinkFromData
  612. #ifdef SetConvertStg
  613. #undef SetConvertStg
  614. #endif
  615. #define SetConvertStg   _afxOLE.pfnSetConvertStg
  616. #ifdef OleDuplicateData
  617. #undef OleDuplicateData
  618. #endif
  619. #define OleDuplicateData    _afxOLE.pfnOleDuplicateData
  620. #ifdef WriteFmtUserTypeStg
  621. #undef WriteFmtUserTypeStg
  622. #endif
  623. #define WriteFmtUserTypeStg _afxOLE.pfnWriteFmtUserTypeStg
  624. #ifdef OleRegGetMiscStatus
  625. #undef OleRegGetMiscStatus
  626. #endif
  627. #define OleRegGetMiscStatus _afxOLE.pfnOleRegGetMiscStatus
  628. #ifdef CoGetMalloc
  629. #undef CoGetMalloc
  630. #endif
  631. #define CoGetMalloc _afxOLE.pfnCoGetMalloc
  632. #ifdef StgIsStorageILockBytes
  633. #undef StgIsStorageILockBytes
  634. #endif
  635. #define StgIsStorageILockBytes  _afxOLE.pfnStgIsStorageILockBytes
  636.  
  637. #ifdef _MAC
  638.  
  639. #ifdef RegEnumKey
  640. #undef RegEnumKey
  641. #endif
  642. #define RegEnumKey _afxOLE.pfnRegEnumKey
  643.  
  644. #ifdef RegDeleteKey
  645. #undef RegDeleteKey
  646. #endif
  647. #define RegDeleteKey _afxOLE.pfnRegDeleteKey
  648.  
  649. #ifdef RegDeleteValue
  650. #undef RegDeleteValue
  651. #endif
  652. #define RegDeleteValue _afxOLE.pfnRegDeleteValue
  653.  
  654. #ifdef RegCloseKey
  655. #undef RegCloseKey
  656. #endif
  657. #define RegCloseKey _afxOLE.pfnRegCloseKey
  658.  
  659. #ifdef RegSetValue
  660. #undef RegSetValue
  661. #endif
  662. #define RegSetValue _afxOLE.pfnRegSetValue
  663.  
  664. #ifdef RegCreateKey
  665. #undef RegCreateKey
  666. #endif
  667. #define RegCreateKey _afxOLE.pfnRegCreateKey
  668.  
  669. #ifdef RegSetValueEx
  670. #undef RegSetValueEx
  671. #endif
  672. #define RegSetValueEx _afxOLE.pfnRegSetValueEx
  673.  
  674. #ifdef RegQueryValue
  675. #undef RegQueryValue
  676. #endif
  677. #define RegQueryValue _afxOLE.pfnRegQueryValue
  678.  
  679. #ifdef RegOpenKey
  680. #undef RegOpenKey
  681. #endif
  682. #define RegOpenKey _afxOLE.pfnRegOpenKey
  683.  
  684. #ifdef RegQueryValueEx
  685. #undef RegQueryValueEx
  686. #endif
  687. #define RegQueryValueEx _afxOLE.pfnRegQueryValueEx
  688.  
  689. #endif //_MAC
  690.  
  691. // OLEAUT32.DLL mappings
  692. #ifdef SysFreeString
  693. #undef SysFreeString
  694. #endif
  695. #define SysFreeString               _afxOLE.pfnSysFreeString
  696.  
  697. #if !defined(_MAC)
  698. #ifdef SysAllocStringByteLen
  699. #undef SysAllocStringByteLen
  700. #endif
  701. #define SysAllocStringByteLen       _afxOLE.pfnSysAllocStringByteLen
  702. #endif
  703.  
  704. #ifdef VariantCopy
  705. #undef VariantCopy
  706. #endif
  707. #define VariantCopy                 _afxOLE.pfnVariantCopy
  708. #ifdef VariantClear
  709. #undef VariantClear
  710. #endif
  711. #define VariantClear                _afxOLE.pfnVariantClear
  712. #ifdef VariantChangeType
  713. #undef VariantChangeType
  714. #endif
  715. #define VariantChangeType           _afxOLE.pfnVariantChangeType
  716. #ifdef SysAllocStringLen
  717. #undef SysAllocStringLen
  718. #endif
  719. #define SysAllocStringLen           _afxOLE.pfnSysAllocStringLen
  720. #ifdef SysStringLen
  721. #undef SysStringLen
  722. #endif
  723. #define SysStringLen                _afxOLE.pfnSysStringLen
  724. #ifdef SysReAllocStringLen
  725. #undef SysReAllocStringLen
  726. #endif
  727. #define SysReAllocStringLen         _afxOLE.pfnSysReAllocStringLen
  728. #ifdef SysAllocString
  729. #undef SysAllocString
  730. #endif
  731. #define SysAllocString              _afxOLE.pfnSysAllocString
  732.  
  733. #if !defined(_MAC)
  734. #ifdef SysStringByteLen
  735. #undef SysStringByteLen
  736. #endif
  737. #define SysStringByteLen            _afxOLE.pfnSysStringByteLen
  738. #endif
  739.  
  740. #ifdef VarCyFromStr
  741. #undef VarCyFromStr
  742. #endif
  743. #define VarCyFromStr                _afxOLE.pfnVarCyFromStr
  744. #ifdef VarBstrFromCy
  745. #undef VarBstrFromCy
  746. #endif
  747. #define VarBstrFromCy               _afxOLE.pfnVarBstrFromCy
  748. #ifdef VarDateFromStr
  749. #undef VarDateFromStr
  750. #endif
  751. #define VarDateFromStr              _afxOLE.pfnVarDateFromStr
  752. #ifdef VarBstrFromDate
  753. #undef VarBstrFromDate
  754. #endif
  755. #define VarBstrFromDate             _afxOLE.pfnVarBstrFromDate
  756. #ifdef LoadTypeLib
  757. #undef LoadTypeLib
  758. #endif
  759. #define LoadTypeLib                 _afxOLE.pfnLoadTypeLib
  760.  
  761. #if defined(_MAC) && defined(MACOCX)
  762. #ifdef LoadTypeLibFSp
  763. #undef LoadTypeLibFSp
  764. #endif
  765. #define LoadTypeLibFSp              _afxOLE.pfnLoadTypeLibFSp
  766. #ifdef RegisterTypeLibFolder
  767. #undef RegisterTypeLibFolder
  768. #endif
  769. #define RegisterTypeLibFolder       _afxOLE.pfnRegisterTypeLibFolder
  770. #ifdef QueryTypeLibFolder
  771. #undef QueryTypeLibFolder
  772. #endif
  773. #define QueryTypeLibFolder          _afxOLE.pfnQueryTypeLibFolder
  774. #ifdef GetUserDefaultLCID
  775. #undef GetUserDefaultLCID
  776. #endif
  777. #define GetUserDefaultLCID          _afxOLE.pfnGetUserDefaultLCID
  778. #endif //_MAC && MACOCX
  779.  
  780. #ifdef LoadRegTypeLib
  781. #undef LoadRegTypeLib
  782. #endif
  783. #define LoadRegTypeLib              _afxOLE.pfnLoadRegTypeLib
  784. #ifdef RegisterTypeLib
  785. #undef RegisterTypeLib
  786. #endif
  787. #define RegisterTypeLib             _afxOLE.pfnRegisterTypeLib
  788. #ifdef DosDateTimeToVariantTime
  789. #undef DosDateTimeToVariantTime
  790. #endif
  791. #define DosDateTimeToVariantTime    _afxOLE.pfnDosDateTimeToVariantTime
  792. #ifdef SafeArrayCreate
  793. #undef SafeArrayCreate
  794. #endif
  795. #define SafeArrayCreate             _afxOLE.pfnSafeArrayCreate
  796. #ifdef SafeArrayRedim
  797. #undef SafeArrayRedim
  798. #endif
  799. #define SafeArrayRedim              _afxOLE.pfnSafeArrayRedim
  800. #ifdef SafeArrayAccessData
  801. #undef SafeArrayAccessData
  802. #endif
  803. #define SafeArrayAccessData         _afxOLE.pfnSafeArrayAccessData
  804. #ifdef SafeArrayUnaccessData
  805. #undef SafeArrayUnaccessData
  806. #endif
  807. #define SafeArrayUnaccessData       _afxOLE.pfnSafeArrayUnaccessData
  808. #ifdef SafeArrayGetUBound
  809. #undef SafeArrayGetUBound
  810. #endif
  811. #define SafeArrayGetUBound          _afxOLE.pfnSafeArrayGetUBound
  812. #ifdef SafeArrayGetLBound
  813. #undef SafeArrayGetLBound
  814. #endif
  815. #define SafeArrayGetLBound          _afxOLE.pfnSafeArrayGetLBound
  816. #ifdef SafeArrayGetElemsize
  817. #undef SafeArrayGetElemsize
  818. #endif
  819. #define SafeArrayGetElemsize        _afxOLE.pfnSafeArrayGetElemsize
  820. #ifdef SafeArrayGetDim
  821. #undef SafeArrayGetDim
  822. #endif
  823. #define SafeArrayGetDim             _afxOLE.pfnSafeArrayGetDim
  824. #ifdef SafeArrayCopy
  825. #undef SafeArrayCopy
  826. #endif
  827. #define SafeArrayCopy               _afxOLE.pfnSafeArrayCopy
  828. #ifdef SafeArrayAllocData
  829. #undef SafeArrayAllocData
  830. #endif
  831. #define SafeArrayAllocData          _afxOLE.pfnSafeArrayAllocData
  832. #ifdef SafeArrayAllocDescriptor
  833. #undef SafeArrayAllocDescriptor
  834. #endif
  835. #define SafeArrayAllocDescriptor    _afxOLE.pfnSafeArrayAllocDescriptor
  836. #ifdef SafeArrayGetElement
  837. #undef SafeArrayGetElement
  838. #endif
  839. #define SafeArrayGetElement         _afxOLE.pfnSafeArrayGetElement
  840. #ifdef SafeArrayPutElement
  841. #undef SafeArrayPutElement
  842. #endif
  843. #define SafeArrayPutElement         _afxOLE.pfnSafeArrayPutElement
  844. #ifdef SafeArrayLock
  845. #undef SafeArrayLock
  846. #endif
  847. #define SafeArrayLock               _afxOLE.pfnSafeArrayLock
  848. #ifdef SafeArrayUnlock
  849. #undef SafeArrayUnlock
  850. #endif
  851. #define SafeArrayUnlock             _afxOLE.pfnSafeArrayUnlock
  852. #ifdef SafeArrayDestroy
  853. #undef SafeArrayDestroy
  854. #endif
  855. #define SafeArrayDestroy            _afxOLE.pfnSafeArrayDestroy
  856. #ifdef SafeArrayDestroyData
  857. #undef SafeArrayDestroyData
  858. #endif
  859. #define SafeArrayDestroyData        _afxOLE.pfnSafeArrayDestroyData
  860. #ifdef SafeArrayDestroyDescriptor
  861. #undef SafeArrayDestroyDescriptor
  862. #endif
  863. #define SafeArrayDestroyDescriptor  _afxOLE.pfnSafeArrayDestroyDescriptor
  864. #ifdef SafeArrayPtrOfIndex
  865. #undef SafeArrayPtrOfIndex
  866. #endif
  867. #define SafeArrayPtrOfIndex         _afxOLE.pfnSafeArrayPtrOfIndex
  868.  
  869.  
  870. // OLEDLG.DLL mappings
  871. #ifdef OleUIAddVerbMenu
  872. #undef OleUIAddVerbMenu
  873. #endif
  874. #define OleUIAddVerbMenu        _afxOLE.pfnOleUIAddVerbMenu
  875. #ifdef OleUIBusy
  876. #undef OleUIBusy
  877. #endif
  878. #define OleUIBusy               _afxOLE.pfnOleUIBusy
  879. #ifdef OleUIChangeIcon
  880. #undef OleUIChangeIcon
  881. #endif
  882. #define OleUIChangeIcon         _afxOLE.pfnOleUIChangeIcon
  883. #ifdef OleUIChangeSource
  884. #undef OleUIChangeSource
  885. #endif
  886. #define OleUIChangeSource       _afxOLE.pfnOleUIChangeSource
  887. #ifdef OleUIConvert
  888. #undef OleUIConvert
  889. #endif
  890. #define OleUIConvert            _afxOLE.pfnOleUIConvert
  891. #ifdef OleUIEditLinks
  892. #undef OleUIEditLinks
  893. #endif
  894. #define OleUIEditLinks          _afxOLE.pfnOleUIEditLinks
  895. #ifdef OleUIInsertObject
  896. #undef OleUIInsertObject
  897. #endif
  898. #define OleUIInsertObject       _afxOLE.pfnOleUIInsertObject
  899. #ifdef OleUIObjectProperties
  900. #undef OleUIObjectProperties
  901. #endif
  902. #define OleUIObjectProperties   _afxOLE.pfnOleUIObjectProperties
  903. #ifdef OleUIPasteSpecial
  904. #undef OleUIPasteSpecial
  905. #endif
  906. #define OleUIPasteSpecial       _afxOLE.pfnOleUIPasteSpecial
  907. #ifdef OleUIUpdateLinks
  908. #undef OleUIUpdateLinks
  909. #endif
  910. #define OleUIUpdateLinks        _afxOLE.pfnOleUIUpdateLinks
  911.  
  912. #endif //_AFXDLL
  913.  
  914. #undef AFX_DATA
  915. #define AFX_DATA
  916.  
  917. /////////////////////////////////////////////////////////////////////////////
  918.