Здравствуйте, alsemm, Вы писали:
B>>Так в том то и дело все до момента посылки B>> BYTE dataBuff[MAX_SEND_BUFF_LEN]; B>> BYTE recvBuff[MAX_RECV_BUFF_LEN];
B>> dataBuff[0] = OBEX_CONNECT; B>> *((unsigned short *)&dataBuff[1]) = htons((unsigned short)7); B>> dataBuff[3] = OBEX_VERSION; B>> dataBuff[4] = OBEX_CONNECT_FLAGS; B>> *((unsigned short *)&dataBuff[5]) = htons((unsigned short)MAX_PKT_SIZE);
B>>if (send(MySock, (const char*)dataBuff, 7, 0) == SOCKET_ERROR) B>> { B>> *iMyCode = -2; B>> *iSdkCode = WSAGetLastError(); B>> return FALSE; B>> }
B>>Работает, а вот при приеме первый байт должен быть А0 а у меня С3 — ошибка !!!
B>> if ((recv(MySock, (char *)recvBuff, MAX_RECV_BUFF_LEN, 0) == SOCKET_ERROR) B>> || (recvBuff[0] != OBEX_SUCCESS)) B>> { A>Поиграйте с размером пакета (MAX_PKT_SIZE) — мне в свое время помогало.
A>Алексей
А в каких диапазонах его ставить MAX_PKT_SIZE ?
И еще вопрос , при передаче устанавливаю:
dataBuff[0] = OBEX_PUT;
*((unsigned short *)&dataBuff[1]) = htons((unsigned short)(fileLen*2 + 6+5));
dataBuff[3] = OBEX_NAME;
*((unsigned short *)&dataBuff[4]) = htons((unsigned short)(fileLen*2 + 3+5));
............................
dataBuff[6 + (i*2)-2] = OBEX_LENGTH;
*((DWORD *)&dataBuff[7 + (i*2)-2]) = dwFileSize;
Но почему-то тел, команду C3- длина не понимает, пишет типа длина неизвестна?