ConnectNamedPipe関数を使用して パイプのインスタンスを作成するパイプサーバーを作成しました。その後、私はパイプから読み込んで、バッファにデータを保存します。 まだクライアントを作成していませんが、いくつかの操作を行う必要があります。減算、乗算、加算、課(私は電卓のようなものを実装しようとしている) 2 - - 2数字いる - サーバーがないだろうという操作 1:私のクライアントは、パイプに2つのことを書くことがあるパイプで受信したメッセージを解析する方法
サーバーが計算します
私のサーバーは、パイプからこれらの操作と2つの数字 を読み取って、結果を画面に表示する必要があります。
私の質問は、クライアントが書いた2つの操作をどのように解析できますか?
私のサーバーは正常に動作していますが、解析に問題があります。
#include <iostream>
#include <Windows.h>
using namespace std;
int main()
{
HANDLE createPipe;
BOOL Connect;
BOOL Read;
int buffer[100];
DWORD numBytesRead;
//Create Pipe
createPipe = CreateNamedPipe(
L"\\\\.\\pipe\\StackOverflow",
PIPE_ACCESS_DUPLEX,
PIPE_TYPE_MESSAGE,
PIPE_UNLIMITED_INSTANCES,
1024,
1024,
NMPWAIT_USE_DEFAULT_WAIT,
NULL);
//Check for failure
if(createPipe == INVALID_HANDLE_VALUE){
cout<<"Failed to create a pipe! "<<endl;
}
//Create instance of the pipe
Connect = ConnectNamedPipe(
createPipe,
NULL);
//Check for failure
if(!(Connect)){
cout<<"Failed to connect to the pipe"<<endl;
CloseHandle(createPipe);
}
//Read bytes from the buffer
Read = ReadFile(
createPipe,
buffer,
99 * sizeof(buffer),
&numBytesRead,
NULL);
//check for failure
if(!(Read)){
cout<<"Failed to read from the pipe"<<endl;
CloseHandle(createPipe);
}
return 0;
}
THX
はこの宿題ですか? – sashoalm
私はしたい..私は私のプログラミングのスキルを向上させる私を助けるこれを行うにはしたい – user1341970
OK。あなたのタイトルは、パイプを介してデータを渡すことに問題があると言います。だからあなたはクライアントと一緒にデータを送信しますが、それはサーバーに届かないのですか? – sashoalm