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.

74 lines
1.7 KiB

  1. /*===================================================================
  2. Microsoft Denali
  3. Microsoft Confidential.
  4. Copyright 1998 Microsoft Corporation. All Rights Reserved.
  5. Component: ASPError object
  6. File: asperror.h
  7. Owner: dmitryr
  8. This file contains the definiton of the ASPError class
  9. ===================================================================*/
  10. #ifndef _ASPERROR_H
  11. #define _ASPERROR_H
  12. #include "debug.h"
  13. #include "asptlb.h"
  14. #include "disptch2.h"
  15. #include "memcls.h"
  16. // forward decl
  17. class CErrInfo;
  18. class CASPError : public IASPErrorImpl
  19. {
  20. private:
  21. LONG m_cRefs;
  22. CHAR *m_szASPCode;
  23. LONG m_lNumber;
  24. int m_nColumn;
  25. CHAR *m_szSource;
  26. CHAR *m_szFileName;
  27. LONG m_lLineNumber;
  28. CHAR *m_szDescription;
  29. CHAR *m_szASPDescription;
  30. BSTR m_bstrLineText;
  31. BSTR ToBSTR(CHAR *sz);
  32. public:
  33. // default constructor for 'dummy' error
  34. CASPError();
  35. // real constructor
  36. CASPError(CErrInfo *pErrInfo);
  37. ~CASPError();
  38. // IUnknown
  39. STDMETHODIMP QueryInterface(REFIID, VOID**);
  40. STDMETHODIMP_(ULONG) AddRef(void);
  41. STDMETHODIMP_(ULONG) Release(void);
  42. // IASPError
  43. STDMETHODIMP get_ASPCode(BSTR *pbstrASPCode);
  44. STDMETHODIMP get_Number(long *plNumber);
  45. STDMETHODIMP get_Category(BSTR *pbstrSource);
  46. STDMETHODIMP get_File(BSTR *pbstrFileName);
  47. STDMETHODIMP get_Line(long *plLineNumber);
  48. STDMETHODIMP get_Description(BSTR *pbstrDescription);
  49. STDMETHODIMP get_ASPDescription(BSTR *pbstrDescription);
  50. STDMETHODIMP get_Column(long *plColumn);
  51. STDMETHODIMP get_Source(BSTR *pbstrLineText);
  52. // Cache on per-class basis
  53. ACACHE_INCLASS_DEFINITIONS()
  54. };
  55. #endif //_ASPERROR_H