Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

49 lines
1.3 KiB

  1. //==============================================================;
  2. //
  3. // This source code is only intended as a supplement to existing Microsoft documentation.
  4. //
  5. //
  6. //
  7. //
  8. // THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
  9. // KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
  10. // IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
  11. // PURPOSE.
  12. //
  13. // Copyright (C) 1999 Microsoft Corporation. All Rights Reserved.
  14. //
  15. //
  16. //
  17. //==============================================================;
  18. #ifndef _BASESNAP_H_
  19. #define _BASESNAP_H_
  20. STDAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID *ppvObj);
  21. STDAPI DllCanUnloadNow(void);
  22. ULONG g_uObjects = 0;
  23. ULONG g_uSrvLock = 0;
  24. class CClassFactory : public IClassFactory
  25. {
  26. private:
  27. ULONG m_cref;
  28. public:
  29. enum FACTORY_TYPE {CONTEXTEXTENSION = 0, ABOUT = 1};
  30. CClassFactory(FACTORY_TYPE factoryType);
  31. ~CClassFactory();
  32. STDMETHODIMP QueryInterface(REFIID riid, LPVOID *ppv);
  33. STDMETHODIMP_(ULONG) AddRef();
  34. STDMETHODIMP_(ULONG) Release();
  35. STDMETHODIMP CreateInstance(LPUNKNOWN, REFIID, LPVOID *);
  36. STDMETHODIMP LockServer(BOOL);
  37. private:
  38. FACTORY_TYPE m_factoryType;
  39. };
  40. #endif _BASESNAP_H_