stdafx.cpp 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. // stdafx.cpp : 只包括标准包含文件的源文件
  2. // WxService.pch 将作为预编译头
  3. // stdafx.obj 将包含预编译类型信息
  4. #include "stdafx.h"
  5. // TODO: 在 STDAFX.H 中
  6. // 引用任何所需的附加头文件,而不是在此文件中引用
  7. HMODULE g_hpool = NULL;
  8. IWxAdoInterface* g_pAdoPool = NULL;
  9. typedef IWxAdoInterface* (*CREATEINSTANCE)();
  10. BOOL CreatePoolInstance()
  11. {
  12. #ifdef _DLL_
  13. //加载动态库
  14. g_hpool = (HMODULE)LoadLibrary(_T("WxAdoInterface.dll"));
  15. if (g_hpool == NULL)
  16. {
  17. CString strError = _T("");
  18. strError.Format(_T("error = %d"), GetLastError());
  19. return FALSE;
  20. }
  21. CREATEINSTANCE CreaetInstance = (CREATEINSTANCE)GetProcAddress(g_hpool, "CreateWxAdoPoolInstance");
  22. g_pAdoPool = CreaetInstance();
  23. #else
  24. g_pAdoPool = CWxAdoImpl::GetInstance();
  25. #endif
  26. return (g_pAdoPool == NULL) ? FALSE : TRUE;
  27. }
  28. void FreelyfzodbcLibrary()
  29. {
  30. #ifdef _DLL_
  31. if (g_hpool)
  32. {
  33. g_pAdoPool->ReleasePool();
  34. g_pAdoPool->Release();
  35. FreeLibrary(g_hpool);
  36. }
  37. g_hpool = NULL;
  38. g_pAdoPool = NULL;
  39. #else
  40. if (g_pAdoPool)
  41. {
  42. g_pAdoPool->ReleasePool();
  43. g_pAdoPool->Release();
  44. }
  45. #endif
  46. }