いろいろなパーツをつなげてメッセージを作る必要があります。そこで、ostringstream を使用しました。これで、メールスロットで送信する std::string または const * char ができました。私はそれを行うために多くの方法を試しましたが、毎回間違ったメッセージを受け取ります. メールスロットでメッセージを送信して受信し、コンソールで表示するソリューションを知りたいです。
メールを生成して送信するための私のコードは次のとおりです。
std::ostringstream oss;
oss << "RE" << "01" << "01:01:02.350" << "REMOTA 01 - MSG DESCARTADA";
std::string alarm = oss.str();
const char *a = alarm.c_str();
ASSERT(WriteFile(hMailslot, &a, strlen(a), &dwBytesSent, NULL),
"メッセージを送信できません。");
メッセージを受け取るには:
char alarm[42];
DWORD bytesRead;
ASSERT(ReadFile(hMailslot, &alarm, strlen(alarm), &bytesRead, NULL),
"Impossible to read file. ERROR: " << GetLastError());
std::cout または printf を使用してこのメッセージを読みたいと思います。
よろしく、 レアンドロ・リマ