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.

43 lines
2.0 KiB

  1. //--------------------------------------------------------------------------
  2. // Session.h
  3. //--------------------------------------------------------------------------
  4. #pragma once
  5. //--------------------------------------------------------------------------
  6. // CDatabaseSession
  7. //--------------------------------------------------------------------------
  8. class CDatabaseSession : public IDatabaseSession
  9. {
  10. public:
  11. //----------------------------------------------------------------------
  12. // Construction / Deconstruction
  13. //----------------------------------------------------------------------
  14. CDatabaseSession(void);
  15. ~CDatabaseSession(void);
  16. //----------------------------------------------------------------------
  17. // IUnknown Members
  18. //----------------------------------------------------------------------
  19. STDMETHODIMP QueryInterface(REFIID riid, LPVOID *ppv);
  20. STDMETHODIMP_(ULONG) AddRef(void);
  21. STDMETHODIMP_(ULONG) Release(void);
  22. //----------------------------------------------------------------------
  23. // IDatabaseSession Members
  24. //----------------------------------------------------------------------
  25. STDMETHODIMP OpenDatabase(LPCSTR pszFile, OPENDATABASEFLAGS dwFlags, LPCTABLESCHEMA pSchema, IDatabaseExtension *pExtension, IDatabase **ppDB);
  26. STDMETHODIMP OpenDatabaseW(LPCWSTR pszFile, OPENDATABASEFLAGS dwFlags, LPCTABLESCHEMA pSchema, IDatabaseExtension *pExtension, IDatabase **ppDB);
  27. STDMETHODIMP OpenQuery(IDatabase *pDatabase, LPCSTR pszQuery, IDatabaseQuery **ppQuery);
  28. private:
  29. //----------------------------------------------------------------------
  30. // Private Data
  31. //----------------------------------------------------------------------
  32. LONG m_cRef;
  33. };
  34. //--------------------------------------------------------------------------
  35. // Prototypes
  36. //--------------------------------------------------------------------------
  37. HRESULT CreateDatabaseSession(IUnknown *pUnkOuter, IUnknown **ppUnknown);