📄 stringsocket.h
字号:
/*
This file is part of KCeasy (http://www.kceasy.com)
Copyright (C) 2002-2004 Markus Kern <mkern@kceasy.com>
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
*/
//---------------------------------------------------------------------------
#ifndef StringSocketH
#define StringSocketH
#include <winsock.h>
#include "istring.h"
//---------------------------------------------------------------------------
namespace KCeasyEngine {
class TStringSocket
{
public:
TStringSocket();
~TStringSocket();
bool Connect(const char* Host, unsigned short Port); // blocks
void Disconnect(); // closes socket
void Shutdown(); // calls shutdown
bool IsConnected() { return (Sock != INVALID_SOCKET); }
bool WaitForData(int Timeout); // in ms, return true if data is available
bool Send(const char* String);
char* Receive();
string GetErrorString();
private:
static const int RecvBufSize = 4096;
char* RecvBuf;
SOCKET Sock;
int LastError;
string LastErrorPlace;
string WinsockDesc;
string WinsockStatus;
bool SetError(const char* Place);
};
} // namespace KCeasyEngine
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -