home *** CD-ROM | disk | FTP | other *** search
/ ActiveX Programming Unleashed CD / AXU.iso / source / chap03 / lst32 / lstr.h < prev   
Encoding:
C/C++ Source or Header  |  1996-09-23  |  1.1 KB  |  58 lines

  1.  
  2. #include <windows.h>
  3. #include <stdio.h>
  4. #include <olectl.h>
  5. #include <olectlid.h>
  6.  
  7. #include "guid.h"
  8.  
  9.  
  10. //Prototypes for local functions
  11. HRESULT RegisterLocalServer(REFCLSID rclsid);
  12. HRESULT UnregisterLocalServer(REFCLSID rclsid);
  13.  
  14. //CLSID for the server object
  15.  
  16. class ILowerStr:public IUnknown
  17. {
  18. public:
  19.     virtual STDMETHODIMP Lower(char*, char**)=0;
  20. };
  21.  
  22. //The CConnectionPoint class implements the server object.
  23. class CLowerStr : public ILowerStr
  24. {
  25. private:
  26.     DWORD  m_dwRef;
  27. public:
  28.     //constructor
  29.     CLowerStr();
  30.     ~CLowerStr();
  31.  
  32.     
  33.     STDMETHODIMP QueryInterface(REFIID iid, void **ppv);
  34.     STDMETHODIMP_(ULONG) AddRef();
  35.     STDMETHODIMP_(ULONG) Release();
  36.     STDMETHODIMP Lower(char*, char**); 
  37. };
  38.  
  39.  
  40. class CLowerStrClassFactory : public IClassFactory
  41. {
  42. private:
  43.     DWORD   m_dwRef;
  44.  
  45. public:
  46.     CLowerStrClassFactory();
  47.     ~CLowerStrClassFactory();
  48.  
  49.     STDMETHODIMP QueryInterface(REFIID iid, void **ppv);
  50.     STDMETHODIMP_(ULONG) AddRef();
  51.     STDMETHODIMP_(ULONG) Release();
  52.     
  53.     STDMETHODIMP CreateInstance(IUnknown *punkOuter, REFIID riid, void **ppv);
  54.     STDMETHODIMP LockServer(BOOL fLock);
  55. };
  56.  
  57.  
  58.