Helpers.cpp
上传用户:jsxglz
上传日期:2007-01-03
资源大小:117k
文件大小:3k
源码类别:

SQL Server

开发平台:

Visual C++

  1. // Helpers.cpp: implementation of the CHelpers class.
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4. #include "stdafx.h"
  5. #include "Helpers.h"
  6. #ifdef _DEBUG
  7. #undef THIS_FILE
  8. static char THIS_FILE[]=__FILE__;
  9. #define new DEBUG_NEW
  10. #endif
  11. //////////////////////////////////////////////////////////////////////
  12. // CHelpers
  13. CHelpers::CHelpers()
  14. {
  15. }
  16. CHelpers::~CHelpers()
  17. {
  18. }
  19. int CHelpers::Insert(CListCtrlEx* pListCtrl, CString& sRow, int nImage/* = -1*/,
  20. int nIndex/* = -1*/)
  21. {
  22. ASSERT(pListCtrl);
  23. int nItemIndex = -1;
  24. int nEnd = sRow.Find("|");
  25. if(nEnd != -1)
  26. {
  27. int nSubItem = 0;
  28. LV_ITEM lvItem;
  29. CString sColVal;
  30. lvItem.mask = LVIF_TEXT;
  31. if(nImage != -1)
  32. {
  33. lvItem.mask |= LVIF_IMAGE;
  34. lvItem.iImage = nImage;
  35. }
  36. if(nIndex != -1)
  37. lvItem.iItem = nIndex;
  38. lvItem.iSubItem = nSubItem++;
  39. sColVal = sRow.Mid(0, nEnd);
  40. lvItem.pszText = const_cast<char*>((const char*)sColVal);
  41. nItemIndex  = pListCtrl->InsertItem(&lvItem);
  42. ASSERT(nItemIndex != -1);
  43. if(nItemIndex != -1)
  44. {
  45. while(sRow.GetLength() > nEnd) 
  46. {  
  47. sRow = sRow.Mid(nEnd + 1);
  48. nEnd = sRow.Find("|");
  49. if(nEnd == -1)
  50. break;
  51. lvItem.iItem = nItemIndex;
  52. lvItem.iSubItem = nSubItem++;
  53. sColVal = sRow.Mid(0, nEnd);
  54. lvItem.pszText = const_cast<char*>((const char*)sColVal);
  55. pListCtrl->SetItem(&lvItem);
  56. }
  57. }
  58. }
  59. return nItemIndex;
  60. }
  61. CString CHelpers::GetFileExceptionError(const int& nCause)
  62. {
  63. CString sBuff(_T("An unspecified error occurred."));
  64. switch(nCause)
  65. {
  66. case CFileException::fileNotFound:
  67. sBuff = _T("The file could not be located.");
  68. break;
  69. case CFileException::badPath:
  70. sBuff = _T("All or part of the path is invalid.");
  71. break;
  72. case CFileException::tooManyOpenFiles:
  73. sBuff = _T("The permitted number of open files was exceeded.");
  74. break;
  75. case CFileException::accessDenied:
  76. sBuff = _T("The file could not be accessed.");
  77. break;
  78. case CFileException::invalidFile:
  79. sBuff = _T("There was an attempt to use an invalid file handle.");
  80. break;
  81. case CFileException::removeCurrentDir:
  82. sBuff = _T("The current working directory cannot be removed.");
  83. break;
  84. case CFileException::directoryFull:
  85. sBuff = _T("There are no more directory entries.");
  86. break;
  87. case CFileException::badSeek:
  88. sBuff = _T("There was an error trying to set the file pointer.");
  89. break;
  90. case CFileException::hardIO:
  91. sBuff = _T("There was a hardware error.");
  92. break;
  93. case CFileException::sharingViolation:
  94. sBuff = _T("SHARE.EXE was not loaded, or a shared region was locked.");
  95. break;
  96. case CFileException::lockViolation:
  97. sBuff = _T("There was an attempt to lock a region that was already locked.");
  98. break;
  99. case CFileException::diskFull:
  100. sBuff = _T("The disk is full.");
  101. break;
  102. case CFileException::endOfFile:
  103. sBuff = _T("The end of file was reached."); 
  104. break;
  105. }
  106. return sBuff;
  107. }