stdNetApi.h
上传用户:maryhy001
上传日期:2007-05-02
资源大小:2317k
文件大小:3k
源码类别:

网格计算

开发平台:

Visual C++

  1. //File Name : stdNetApi.h.
  2. //Standard Net Library API common header file that writen by Devia.
  3. //This code is free all, you can distribute it.
  4. //Author : Devia Li(devia@sina.com)
  5. //DateTime : 2004-04-02
  6. #ifndef _STDNETAPI_H
  7. #define _STDNETAPI_H
  8. #pragma warning(disable:4786)
  9. //###Include header files...
  10. #include <vector>
  11. #include <list>
  12. #include <string>
  13. #include <map>
  14. #include <errno.h>
  15. #include <assert.h>
  16. #include <iostream>
  17. #include <fstream>
  18. #include <process.h>
  19. #include <typeinfo.h>
  20. //windows header file.
  21. #include <windows.h>
  22. //COM base objects header file.
  23. #include <objbase.h>
  24. //windows socket v2.0 header file.
  25. #include <winsock2.h>
  26. #pragma comment(lib, "ws2_32.lib")
  27. using namespace std;
  28. //###Windows message define here.
  29. #define UWM_SOCK_MESSAGE WM_APP + 100
  30. #define UWM_SVR_UPDATE_CLIENT_COUNTS UWM_SOCK_MESSAGE + 1
  31. #define UWM_SNDER_UPDATE_REGISTER_TOSVR UWM_SOCK_MESSAGE + 2
  32. #define UWM_SNDER_UPDATE_SNDING_START UWM_SOCK_MESSAGE + 3
  33. #define UWM_SNDER_UPDATE_SNDING_PROGRESS UWM_SOCK_MESSAGE + 4
  34. #define UWM_SNDER_UPDATE_ONEFILESEND_OK UWM_SOCK_MESSAGE + 5
  35. #define UWM_RECVOR_UPDATE_RECVING_START UWM_SOCK_MESSAGE + 6
  36. #define UWM_RECVOR_UPDATE_RECVING_PROGRESS UWM_SOCK_MESSAGE + 7
  37. #define UWM_RECVOR_UPDATE_ONEFILERECV_OK UWM_SOCK_MESSAGE + 8
  38. //###NetLib constant define here.
  39. #define MAX_SIZE_CLSID 64
  40. #define MAX_FALSE_TIMES 32
  41. #define STR_END_CHAR ''
  42. //###Type define
  43. typedef unsigned int  uint;
  44. typedef unsigned long ulong;
  45. typedef unsigned short ushort;
  46. typedef __int64 longlong;
  47. //###Macro define here
  48. #define _DELETE(p) { 
  49. if (p) delete p; 
  50. p = NULL; 
  51. }
  52. #if defined _AFXDLL 
  53. #define NETLIBDLLEXPORT  AFX_EXT_CLASS
  54. #define DLLEXPORTS  __declspec(dllexport)
  55. #define DLLIMPORTS  __declspec(dllimport)
  56. #else 
  57. #define NETLIBDLLEXPORT
  58. #pragma message("Static")
  59. #define DLLEXPORTS
  60. #define DLLIMPORTS
  61. #endif
  62. //net exception header file.
  63. #include "NetException.h"
  64. #if defined _AFXDLL 
  65. extern "C"{
  66. #endif
  67. //initialize and unInitialize the windows socket library.
  68. bool DLLEXPORTS Initialize(WORD wVersion = MAKEWORD(2, 0));
  69. bool DLLEXPORTS UnInitialize();
  70. //allocate the window from the window's message procedure.
  71. HWND DLLEXPORTS AllocateHWnd(WNDPROC wpMethod, long lData);
  72. //destroy the window
  73. void DLLEXPORTS DeallocateHWnd(HWND hWnd);
  74. //get someone CLSID id string text.
  75. bool DLLEXPORTS GenerateCLSID(char *szCLSID, const nMaxSize);
  76. //#############################################
  77. //get the file path string.
  78. void DLLEXPORTS ExtractFilePath(const char* lpzFileFullName,
  79.  char*  lpFilePath, 
  80.  ushort wBufSize);
  81. //get the file name string ...
  82. void DLLEXPORTS ExtractFileName(const char* lpzFileFullName,
  83.  char*  lpFileName,
  84.  ushort wBufSize);
  85. //determine the file / directory whether or not exists.
  86. bool DLLEXPORTS FileExists(const char *lpszFileName);
  87. //
  88. bool DLLEXPORTS DirectoryExists(const char *lpszDirectoryName);
  89. //create the multi levels directories...
  90. bool DLLEXPORTS CreateDirectorys(const char *lpszDirectoryName);
  91. //get the file attributes.
  92. bool DLLEXPORTS GetFileInfo(const char *lpszFileName, 
  93. BY_HANDLE_FILE_INFORMATION *pfileinfo);
  94. //set the file attributes.
  95. void DLLEXPORTS SetFileInfo(const char *lpszFileName, 
  96.  BY_HANDLE_FILE_INFORMATION &fileinfo);
  97. //delete someone character from string buf.
  98. void DLLEXPORTS DeleteCharFromString(char *lpString, const char ch);
  99. #if defined _AFXDLL 
  100. }
  101. #endif
  102. #endif //_STDNETAPI_H