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.

95 lines
3.1 KiB

  1. ///////////////////////////////////////////////////////////////////////////////
  2. //
  3. // Copyright (c) 2000, Microsoft Corp. All rights reserved.
  4. //
  5. // FILE
  6. //
  7. // netshhelper.cpp
  8. //
  9. // SYNOPSIS
  10. //
  11. // Implement the class CIASNetshJetHelper.
  12. //
  13. // MODIFICATION HISTORY
  14. //
  15. // 04/13/2000 Original version.
  16. // 06/13/2000 parameter TRUE added for IASUpgrade
  17. //
  18. // NOTE
  19. //
  20. // OpenJetDatabase MUST be called BEFORE calling any other method.
  21. //
  22. ///////////////////////////////////////////////////////////////////////////////
  23. #include <windows.h>
  24. #include "netshhelper.h"
  25. #include <iasdb.h>
  26. #include "setup.h"
  27. #include "datastore2.h"
  28. //////////////////////////////////////////////////////////////////////////////
  29. // CIASNetshJetHelper
  30. //////////////////////////////////////////////////////////////////////////////
  31. //////////////////////////////////////////////////////////////////////////////
  32. // OpenJetDatabase
  33. //////////////////////////////////////////////////////////////////////////////
  34. STDMETHODIMP CIASNetshJetHelper::OpenJetDatabase(
  35. BSTR Path,
  36. VARIANT_BOOL ReadOnly
  37. )
  38. {
  39. return IASOpenJetDatabase(Path, ReadOnly, &m_Session);
  40. }
  41. //////////////////////////////////////////////////////////////////////////////
  42. // IASExecuteSQLFunction
  43. //////////////////////////////////////////////////////////////////////////////
  44. STDMETHODIMP CIASNetshJetHelper::ExecuteSQLFunction(BSTR Command, LONG *Result)
  45. {
  46. return IASExecuteSQLFunction(m_Session, Command, Result);
  47. }
  48. //////////////////////////////////////////////////////////////////////////////
  49. // ExecuteSQLCommand
  50. //////////////////////////////////////////////////////////////////////////////
  51. STDMETHODIMP CIASNetshJetHelper::ExecuteSQLCommand(BSTR Command)
  52. {
  53. return IASExecuteSQLCommand(m_Session, Command, NULL);
  54. }
  55. //////////////////////////////////////////////////////////////////////////////
  56. // CreateJetDatabase
  57. //////////////////////////////////////////////////////////////////////////////
  58. STDMETHODIMP CIASNetshJetHelper::CreateJetDatabase(BSTR Path)
  59. {
  60. return IASCreateJetDatabase(Path);
  61. }
  62. //////////////////////////////////////////////////////////////////////////////
  63. // CloseJetDatabase
  64. //////////////////////////////////////////////////////////////////////////////
  65. STDMETHODIMP CIASNetshJetHelper::CloseJetDatabase()
  66. {
  67. m_Session.Release();
  68. return S_OK;
  69. }
  70. //////////////////////////////////////////////////////////////////////////////
  71. // MigrateOrUpgradeDatabase
  72. //////////////////////////////////////////////////////////////////////////////
  73. STDMETHODIMP CIASNetshJetHelper::MigrateOrUpgradeDatabase(
  74. IAS_SHOW_TOKEN_LIST configType
  75. )
  76. {
  77. CIASMigrateOrUpgrade migrateOrUpgrade;
  78. // TRUE = "called from NetshellDataMigration"
  79. return migrateOrUpgrade.Execute(TRUE, configType);
  80. }