Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- type
- // Message Packet that send from DLL
- TRECV_PACKET = Packed Record
- nID: Integer;
- lpData: Pointer;
- end;
- LPRECV_PACKET = ^TRECV_PACKET;
- // Request record
- ReqBlock = Packed Record
- id: array [0..7] of Char
- end;
- LPReqBlock = ^ReqBlock;
- // Response record
- ResBlock = Packed Record
- title: array[0..255] of Char; _dt: Char;
- description: array[0..1204] of Char; _time: Char;
- end;
- LPResBlock = ^ResBlock;
- procedure TForm.OnReceiveData(var Message: TMessage);
- var
- recvPacket: LPRECV_PACKET;
- _resBlock: LPResBlock;
- begin
- // Actually, I don't know why Message.LParam is parameter of LPRECV_PACKET. How it
- recvPacket := LPRECV_PACKET(Message.LParam); works?
- _resBlock := LPResBlock(recvPacket^.lpData);
- ShowMessage(_resBlock^.title); // Broken datas...
- end;
- function ETK_Request(hWnd: HWND; pszTrCode: PAnsiChar; lpData: Pointer; nDataSize: Integer; bNext: Boolean; pszContinueKey: PAnsiChar; nTimeOut: Integer): Integer; stdcall; external XING_API_DLL;
- procedure OnReceiveData(var Message: TMessage); message WM_USER + XM_RECEIVE_DATA;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement