Source code of Windows XP (NT5)
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.

107 lines
3.1 KiB

  1. //+-------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. //
  5. // Copyright (C) Microsoft Corporation, 1999 - 2000
  6. //
  7. // File: symbolverification.h
  8. //
  9. //--------------------------------------------------------------------------
  10. // SymbolVerification.h: interface for the CSymbolVerification class.
  11. //
  12. //////////////////////////////////////////////////////////////////////
  13. #if !defined(AFX_SYMBOLVERIFICATION_H__1643E486_AD71_11D2_83DE_0010A4F1B732__INCLUDED_)
  14. #define AFX_SYMBOLVERIFICATION_H__1643E486_AD71_11D2_83DE_0010A4F1B732__INCLUDED_
  15. #if _MSC_VER > 1000
  16. #pragma once
  17. #endif // _MSC_VER > 1000
  18. #ifndef NO_STRICT
  19. #ifndef STRICT
  20. #define STRICT 1
  21. #endif
  22. #endif /* NO_STRICT */
  23. #include <WINDOWS.H>
  24. #include <TCHAR.H>
  25. #include <comdef.h>
  26. //
  27. //#include "oemdbi.h"
  28. //
  29. // Bug MSINFO V4.1:655 - Link to static msdbi60l.lib
  30. #define PDB_LIBRARY
  31. #pragma warning( push )
  32. #pragma warning( disable : 4201 ) // Disable "nonstandard extension used : nameless struct/union" warning
  33. #include "PDB.H"
  34. #pragma warning( pop )
  35. typedef char * SZ;
  36. // ADO Import
  37. // #define INITGUID
  38. // #import "C:\temp\msado15.dll" no_namespace rename("EOF", "EndOfFile")
  39. #include "msado15.tlh"
  40. //
  41. // Q177939 - INFO: Changes in ADO 1.5 That Affect Visual C++/J++ Programmers[adobj]
  42. //
  43. // #include <initguid.h> // Newly Required for ADO 1.5.
  44. // #include <adoid.h>
  45. // #include <adoint.h>
  46. // Forward Declarations
  47. class CModuleInfo;
  48. class CSymbolVerification
  49. {
  50. public:
  51. CSymbolVerification();
  52. virtual ~CSymbolVerification();
  53. bool Initialize();
  54. bool InitializeSQLServerConnection(LPTSTR tszSQLServerName);
  55. bool InitializeSQLServerConnection2(LPTSTR tszSQLServerName); // mjl
  56. inline bool SQLServerConnectionInitialized() {
  57. return m_fSQLServerConnectionInitialized;
  58. };
  59. inline bool SQLServerConnectionInitialized2() {
  60. return m_fSQLServerConnectionInitialized2;
  61. };
  62. inline bool SQLServerConnectionAttempted() {
  63. return m_fSQLServerConnectionAttempted;
  64. };
  65. inline bool SQLServerConnectionAttempted2() {
  66. return m_fSQLServerConnectionAttempted2;
  67. };
  68. bool SearchForDBGFileUsingSQLServer(LPTSTR tszPEImageModuleName, DWORD dwPEImageTimeDateStamp, CModuleInfo * lpModuleInfo);
  69. bool SearchForDBGFileUsingSQLServer2(LPTSTR tszPEImageModuleName, DWORD dwPEImageTimeDateStamp, CModuleInfo * lpModuleInfo);
  70. bool SearchForPDBFileUsingSQLServer2(LPTSTR tszPEImageModuleName, DWORD dwPDBSignature, CModuleInfo * lpModuleInfo);
  71. bool TerminateSQLServerConnection();
  72. bool TerminateSQLServerConnection2();
  73. protected:
  74. bool m_fComInitialized;
  75. bool m_fSQLServerConnectionAttempted;
  76. bool m_fSQLServerConnectionAttempted2; // SQL2 - mjl 12/14/99
  77. void DumpCOMException(_com_error &e);
  78. bool m_fSQLServerConnectionInitialized;
  79. bool m_fSQLServerConnectionInitialized2; // SQL2 - mjl 12/14/99
  80. _ConnectionPtr m_lpConnectionPointer;
  81. _RecordsetPtr m_lpRecordSetPointer;
  82. _ConnectionPtr m_lpConnectionPointer2; // SQL2 - mjl 12/14/99
  83. _RecordsetPtr m_lpRecordSetPointer2; // SQL2 - mjl 12/14/99
  84. };
  85. #endif // !defined(AFX_SYMBOLVERIFICATION_H__1643E486_AD71_11D2_83DE_0010A4F1B732__INCLUDED_)