188风格
procedure SendGameCenterMsg(wIdent: Word; sSendMsg: AnsiString); var SendData : TCopyDataStruct; nParam : Integer; begin nParam := MakeLong(Word(tDBServer), wIdent); SendData.cbData := Length(sSendMsg) + 1; GetMem(SendData.lpData, SendData.cbData); StrCopy(SendData.lpData, PAnsiChar(sSendMsg)); SendMessage(g_dwGameCenterHandle, WM_COPYDATA, nParam, Cardinal(@SendData)); FreeMem(SendData.lpData); end;
3K风格
procedure SendGameCenterMsg(wIdent: Word; sSendMsg: string); var SendData: TCopyDataStruct; nParam: Integer; begin if g_dwGameCenterHandle <> 0 then begin nParam := MakeLong(Word(tDBServer), wIdent); SendData.cbData := Length(AnsiString(sSendMsg)) + 1; GetMem(SendData.lpData, SendData.cbData); Move(PAnsiChar(AnsiString(sSendMsg))^, PAnsiChar(AnsiString(SendData.lpData))^, Length(AnsiString(sSendMsg)) + 1); SendMessage(g_dwGameCenterHandle, WM_COPYDATA, nParam, Cardinal(@SendData)); FreeMem(SendData.lpData); end; end;
BLUE风格
procedure SendGameCenterMsg(wIdent: Word; sSendMsg: string); var SendData : TCopyDataStruct; nParam : Integer; begin if g_dwGameCenterHandle <> 0 then begin nParam := MakeLong(Word(tDBServer), wIdent); SendData.cbData := Length(AnsiString(sSendMsg)) + 1; GetMem(SendData.lpData, SendData.cbData); Move(PAnsiChar(AnsiString(sSendMsg))^, PAnsiChar(AnsiString(SendData.lpData))^, Length(AnsiString(sSendMsg)) + 1); SendMessage(g_dwGameCenterHandle, WM_COPYDATA, nParam, Cardinal(@SendData)); FreeMem(SendData.lpData); end; end;