dllmain.cpp 825 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. // dllmain.cpp : 定义 DLL 应用程序的入口点。
  2. #include "stdafx.h"
  3. #include <winsock2.h>
  4. #define VERSION_MAJOR 2
  5. #define VERSION_MINOR 2
  6. #pragma comment(lib,"Ws2_32.lib")
  7. static WSADATA wsaData;
  8. void InitSocketEntry()
  9. {
  10. WORD VersionNeeded = MAKEWORD(VERSION_MAJOR, VERSION_MINOR);
  11. int Error = WSAStartup(VersionNeeded, &wsaData);
  12. if (Error)
  13. {
  14. MessageBox(NULL, "Init Socket Failed", "Sys Lib", MB_OK);
  15. }
  16. }
  17. void ExitSocketEntry()
  18. {
  19. WSACleanup();
  20. }
  21. BOOL APIENTRY DllMain( HMODULE hModule,
  22. DWORD ul_reason_for_call,
  23. LPVOID lpReserved
  24. )
  25. {
  26. switch (ul_reason_for_call)
  27. {
  28. case DLL_PROCESS_ATTACH:
  29. InitSocketEntry();
  30. break;
  31. case DLL_THREAD_ATTACH:
  32. case DLL_THREAD_DETACH:
  33. break;
  34. case DLL_PROCESS_DETACH:
  35. ExitSocketEntry();
  36. break;
  37. }
  38. return TRUE;
  39. }