EdSockServerApi.pas
上传用户:anlu_slm
上传日期:2022-07-30
资源大小:283k
文件大小:5k
源码类别:

Delphi控件源码

开发平台:

Delphi

  1. unit EdSockServerApi;
  2. //**********************************************************
  3. //深圳市东方数码技术有限公司
  4. //曾伟才
  5. //2004年11月9日
  6. //**********************************************************
  7. interface
  8. uses
  9.   Windows;
  10. const
  11.   //数据错误
  12.   EDDATAERROR = 1000;
  13.   //模块缓冲区溢出
  14.   EDBUFOVERFLOW = 1001;
  15.   //电脑接收缓冲区溢出,用于阻塞接收调用
  16.   EDRECVBUFOVERFLOW = 1002; 
  17. type
  18.   TOnAccept = procedure (ConnectID: Longint); stdcall;
  19.   TOnConnectClose = procedure (ConnectID: Longint); stdcall;
  20.   TOnError = procedure (SocketID: Longint; ErrorCode: Longint); stdcall;
  21.   TOnReceConfigData = procedure (ConnectID: Longint; pDataBuf: PByte; DataLength: Longint); stdcall;
  22.   TOnReceFromCOM = procedure (ConnectID: Longint; COMNum: Longint; pDataBuf: PByte; DataLength: Longint); stdcall;
  23.   TOnSwitchChange = procedure (ConnectID: Longint; PortNum: Longint; Value: Longint); stdcall;
  24. //附加
  25. function mac_ntoa(mac: PByte; maclen: Integer; strmac: PByte; strlen: Integer): Integer; stdcall;
  26. function net_ntoa(ipAddr: ULONG; str: PByte; strlen: Integer): Integer; stdcall;
  27. function GetLocalIP(ConnectID: Longint): ULONG; stdcall;
  28. function GetLocalPort(ConnectID: Longint): Longint; stdcall;
  29. function StartListen(LocalIP: LPCTSTR; LocalPort: Longint): BOOL; stdcall;
  30. function StopListen(): BOOL; stdcall;
  31. function CloseConnect(ConnectID: Longint): BOOL; stdcall;
  32. function GetError(SocketID: Longint): Longint; stdcall;
  33. function GetPeerIP(ConnectID: Longint): ULONG; stdcall;
  34. function GetPeerPort(ConnectID: Longint): Longint; stdcall;
  35. function OpenConnect(PeerIP: LPCTSTR; PeerPort: Longint; LocalIP: LPCTSTR; LocalPort: Longint): BOOL; stdcall;
  36. function GetMAC(ConnectID: Longint; lpMac: PByte; maclen: Integer): Integer; stdcall;
  37. function GetSwitchDirection(ConnectID: Longint; PortNum: Longint): Longint; stdcall;
  38. function SendToCOM(ConnectID: Longint; COMNum: Longint; pDataBuf: PByte; DataLength: Longint): BOOL; stdcall;
  39. function SetSwitchValue(ConnectID: Longint; PortNum: Longint; Value: Longint): BOOL; stdcall;
  40. function RequestConfigData(ConnectID: Longint): BOOL; stdcall;
  41. function SetConfigData(ConnectID: Longint; pDataBuf: pByte; DataLength: Longint): BOOL; stdcall;
  42. function GetSwitchValue(ConnectID: Longint; PortNum: Longint): Longint; stdcall;
  43. function ResetBoard(ConnectID: Longint): Longint; stdcall;
  44. function GetModel(ConnectID: Longint): Smallint; stdcall;
  45. function SetCOMPara(ConnectID: Longint; COMNum: Longint; pDataBuf: pByte; DataLength: Longint): BOOL; stdcall;
  46. function IsSocket(): BOOL; stdcall;
  47. function IsNoDelay(): BOOL; stdcall;
  48. function SetSocket(IsSocketValue: BOOL): BOOL; stdcall;
  49. function SetNoDelay(IsNoDelayValue: BOOL): BOOL; stdcall;
  50. function SetCallback(lpOnAccept: TOnAccept; lpOnConnectClose: TOnConnectClose; lpOnError:
  51.   TOnError; lpOnReceConfigData: TOnReceConfigData; lpOnReceFromCOM: TOnReceFromCOM;
  52.   lpOnSwitchChange: TOnSwitchChange): BOOL; stdcall;
  53. function CloseAllConnect(): BOOL; stdcall;
  54. function SetConnectOpt(ConnectID: Longint; level: Integer; optname: Integer;
  55.   optval: PChar; optlen: Integer): BOOL; stdcall;
  56. function GetCOM(ConnectID: Longint): Integer; stdcall;
  57. function ReceiveData(ConnectID: Longint; pDataBuf: PByte; BufLen: Longint; dwWait: DWORD): Longint; stdcall;
  58. const
  59.   EdSockServer = 'EdSockServer.dll';
  60.   
  61. implementation
  62. function mac_ntoa; external EdSockServer name 'mac_ntoa';
  63. function net_ntoa; external EdSockServer name 'net_ntoa';
  64. function GetLocalIP; external EdSockServer name 'GetLocalIP';
  65. function GetLocalPort; external EdSockServer name 'GetLocalPort';
  66. function StartListen; external EdSockServer name 'StartListen';
  67. function StopListen; external EdSockServer name 'StopListen';
  68. function CloseConnect; external EdSockServer name 'CloseConnect';
  69. function GetError; external EdSockServer name 'GetError';
  70. function GetPeerIP; external EdSockServer name 'GetPeerIP';
  71. function GetPeerPort; external EdSockServer name 'GetPeerPort';
  72. function OpenConnect; external EdSockServer name 'OpenConnect';
  73. function GetMAC; external EdSockServer name 'GetMAC';
  74. function GetSwitchDirection; external EdSockServer name 'GetSwitchDirection';
  75. function SendToCOM; external EdSockServer name 'SendToCOM';
  76. function SetSwitchValue; external EdSockServer name 'SetSwitchValue';
  77. function RequestConfigData; external EdSockServer name 'RequestConfigData';
  78. function SetConfigData; external EdSockServer name 'SetConfigData';
  79. function GetSwitchValue; external EdSockServer name 'GetSwitchValue';
  80. function ResetBoard; external EdSockServer name 'ResetBoard';
  81. function GetModel; external EdSockServer name 'GetModel';
  82. function SetCOMPara; external EdSockServer name 'SetCOMPara';
  83. function IsSocket; external EdSockServer name 'IsSocket';
  84. function IsNoDelay; external EdSockServer name 'IsNoDelay';
  85. function SetSocket; external EdSockServer name 'SetSocket';
  86. function SetNoDelay; external EdSockServer name 'SetNoDelay';
  87. function SetCallback; external EdSockServer name 'SetCallback';
  88. function CloseAllConnect; external EdSockServer name 'CloseAllConnect';
  89. function SetConnectOpt; external EdSockServer name 'SetConnectOpt';
  90. function GetCOM; external EdSockServer name 'GetCOM';
  91. function ReceiveData; external EdSockServer name 'ReceiveData';
  92. end.