クライアントは Borland C++ (C++Builder) ではなく Visual C++ で作成する必要があるため、現在、クライアントを Chilkat ライブラリで使用しようとしています。接続は機能しますが、クライアントからサーバーに文字列を送信しようとするとすぐに、IdTCPServerExecute
関数にヒットしません。サーバーが使用しているライブラリとは別のライブラリをクライアントに使用することは可能ですか? もしそうなら、どのように?
編集:クライアントがサーバーに文字列を正常に送信することができました。私は今、次のようにクライアントメッセージを処理します:
UnicodeString Message = AContext->Connection->Socket->AllData();
それ以外の:
UnicodeString Message = AContext->Connection->Socket->ReadLn();
サーバーから応答文字列を送信する同様のオプションはありますか?
if (IdHTTP->Get
("http://*/index.php?option=com_bookpro&controller=customer&task=bpajaxlogin&username=" +
slTokens->Strings[1] + "&password=" + slTokens->Strings[2] +
"&product_id=" + Class) == "true") {
AddLog("1");
char* Response = "Test";
AContext->Connection->Socket->Write(Response);
AddLog("2");
}
else {
AContext->Connection->Socket->WriteLn
("Authentication failed");
}
また、 になるだけでAddLog("1");
表示されませんAddLog("2");
。
クライアント コード (テスト atm に Winsock を使用):
recv(ConnectSocket, recvbuf, recvbuflen, 0);
printf("Bytes received: %d, %s\n", sizeof(recvbuf), recvbuf);