Mam problem z komunikacja miedzy aplikacjami - pierwsza delphi, druga java. Łączą się bezproblemowo przy pomocy socketów, niestety potem jest problem z przesyłaniem. Co mam zmienić, abym mogł przesyłać stringa? W kodzie javy zamiast "dupa" otrzymuję cos typu "�*��"
Kod javy:
ServerSocket serverSocket = new ServerSocket(1025);
Socket client = serverSocket.accept();
BufferedReader dn= new BufferedReader(new InputStreamReader(client.getInputStream()));
System.out.println(d.readLine());
Kod delphi:
var
wsa : WSAData;
Adr: String;
socket_info: sockaddr_in;
Gniazdo: Integer;
port: Integer;
ErrorCode: Integer;
bufor: String;
WSAStartup(MAKEWORD(2,0),wsa);
Adr := '127.0.0.1';
port := 1025;
Gniazdo := Socket(AF_INET, SOCK_STREAM,0);
socket_info.sin_family := AF_INET;
socket_info.sin_addr.s_addr := inet_addr(PChar(Adr));
socket_info.sin_port := htons(port);
ErrorCode :=connect(Gniazdo, socket_info, SizeOf(socket_info));
if (ErrorCode = SOCKET_ERROR) then
MessageBox(0,'Połączenie nieudane', 'Msg', MB_OK)
else
begin
bufor := 'dupa';
MessageBox(0, 'Połączenie nawiązane', 'Msg', MB_OK);
send(Gniazdo, bufor, sizeof(bufor), 0);
end;
CloseSocket(Gniazdo);
WSACleanUp;