home *** CD-ROM | disk | FTP | other *** search
/ BUG 15 / BUGCD1998_06.ISO / aplic / recent / recent.exe / Recent.cpp < prev    next >
C/C++ Source or Header  |  1998-04-01  |  964b  |  49 lines

  1. #include "stdafx.h"
  2. #include "resource.h"
  3. #include <initguid.h>
  4. #include "Recent.h"
  5. #include "Chooser.h"
  6. #include <ObjModel\appguid.h>
  7.  
  8. #include "Recent_i.c"
  9.  
  10. CComModule _Module;
  11.  
  12. BEGIN_OBJECT_MAP(ObjectMap)
  13.     OBJECT_ENTRY(CLSID_Chooser, Chooser)
  14. END_OBJECT_MAP()
  15.  
  16. extern "C" BOOL WINAPI DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID /*lpReserved*/)
  17. {
  18.     if(dwReason == DLL_PROCESS_ATTACH)
  19.     {
  20.         _Module.Init(ObjectMap, hInstance);
  21.         DisableThreadLibraryCalls(hInstance);
  22.     }
  23.     else if(dwReason == DLL_PROCESS_DETACH)
  24.         _Module.Term();
  25.  
  26.     return TRUE;
  27. }
  28.  
  29. STDAPI DllCanUnloadNow(void)
  30. {
  31.     return !_Module.GetLockCount() ? S_OK : S_FALSE;
  32. }
  33.  
  34. STDAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID* ppv)
  35. {
  36.     return _Module.GetClassObject(rclsid, riid, ppv);
  37. }
  38.  
  39. STDAPI DllRegisterServer(void)
  40. {
  41.     return _Module.RegisterServer(TRUE);
  42. }
  43.  
  44. STDAPI DllUnregisterServer(void)
  45. {
  46.     _Module.UnregisterServer();
  47.     return S_OK;
  48. }
  49.