Очень нужна помощь, создал приложение сервер которое создает канал и подключается к нему, но функция под вторым пунктом меню - ConnectNamedPipe, возвращает ошибку через getlasterror - 997(ERROR_IO_PENDING), подскажите в чем может быть проблема? К каналу я подключаюсь после создания канала(после первого пункта меню).
int menu()
{
int choise = 0;
cout << "1 - Create the Pipe" << endl;
cout << "2 - Connect the Pipe" << endl;
cout << "3 - Write to the Pipe" << endl;
cout << "4 - Disconnect the Pipe" << endl;
cout << "0 - Exit" << endl;
cin >> choise;
return choise;
}
int main() {
setlocale(LC_ALL, "Russian");
///*
HANDLE hPipe = NULL;
OVERLAPPED overlapped = OVERLAPPED();
overlapped.hEvent = CreateEvent(NULL, true, false, NULL);
overlapped.Offset = 0;
overlapped.OffsetHigh = 0;
char buffer[512];
int choise = menu();
while (choise != 0) {
switch (choise)
{
case 1:
{
hPipe = CreateNamedPipe("\\\\.\\pipe\\myPipe1", (PIPE_ACCESS_OUTBOUND | FILE_FLAG_OVERLAPPED), PIPE_TYPE_MESSAGE, 1, 512, 512, 0, NULL);
if (hPipe != INVALID_HANDLE_VALUE) {
cout << "Pipe was created\n";
}
else {
cout << "Can't create the pipe\n";
system("pause");
}
break;
}
case 2:
{
if (hPipe == NULL) {
cout << "vdvdfvdvfvd\n";
}
bool connected = ConnectNamedPipe(hPipe, &overlapped);
if (connected)
{
cout << "Connected to the pipe\n";
}
else {
DWORD connectedError = GetLastError();
cout << connectedError;
}
//if (ConnectNamedPipe(hPipe, NULL)) {
// cout << "Connected to the pipe\n";
//}
//else {
// cout << "Can't connect the pipe\n";
//}
break;
}
case 3:
{
ZeroMemory(buffer, 0);
cout << "Enter message: ";
cin >> buffer;
WriteFile(hPipe, buffer, strlen(buffer) + 1, NULL, &overlapped);
WaitForSingleObject(overlapped.hEvent, INFINITE);
cout << "Written\n";
break;
}
case 4:
{
DisconnectNamedPipe(hPipe);
CloseHandle(overlapped.hEvent);
}
}
cout << "\n";
choise = menu();
}
system("pause");
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Как я могу создать массив структур внутри которой будут массивы других структур? Например: есть class students , мне нужна новая stuct theclass внутри которой...
Требуется изменить размер поля для галочки в QCheckBoxПробовал сделать это с помощью настройки стиля:
Возникла проблема при написании приложения: GET и DELETE операции проходят, а PUT и POST нет
метод Update в c# выполняет определённый ряд действий каждый кадрПредроложим, что я хочу сделать медленное увеличение предмета