WSError (C 函数)
int WSError(WSLINK link)
返回一个值,确定发生在 link 中的最后一个错误. 如果自上次调用 WSClearError() 之后,没有发生错误,WSError() 返回 WSEOK.
更多信息
- 通过调用 WSErrorMessage() ,可以获取错误的文本描述.
- WSError() 可以返回以下值:
-
WSEOK 一切正常 WSEDEAD 链接死了 WSEGBAD 不一致的数据读取 WSEGSEQ 失序调用 WSGet() 函数 WSEPBTK WSPutNext() 传递一个坏的令牌 WSEPSEQ 失序调用 WSPut() 函数 WSEPBIG WSPutData() 给予太多数据 WSEOVFL 机器数溢出 WSEMEM 内存不足 WSEACCEPT 接受 socket 连接失败 WSECONNECT 延迟的连接仍然未连接 WSEPUTENDPACKET 意外或错过 WSEndPacket() 的调用 WSENEXTPACKET 当当前数据包具有未读取数据时调用 WSNextPacket() WSEUNKNOWNPACKET WSNextPacket() 读取一个未知数据包标头 WSEGETENDPACKET 意外结束数据包 WSEABORT 影响链接前中止 put 或 get WSECLOSED 链接的另一端关闭了链接(你可能仍然收到未分发的数据) WSEINIT WSTP 环境没有被初始化 WSEARGV 没有足够的自变量打开链接 WSEPROTOCOL 没有可用协议 WSEMODE 没有可用模式 WSELAUNCH 启动不支持 WSELAUNCHAGAIN 不能从同一文件中再次启动程序 WSELAUNCHSPACE 没有足够的空间启动程序 WSENOPARENT 没有可用的父连接 WSENAMETAKEN 链接名称已被使用 WSENOLISTEN 找到的链接名称没有被监听 WSEBADNAME 链接名称被丢失或形式不合适 WSEBADHOST 位置不可访问或形式不合适 WSELAUNCHFAILED 程序未能启动,因为缺少资源或程序库 WSELAUNCHNAME 启动失败,因为没有找到程序 WSEPSCONVERT 不能从给定的字符编码转换成链接编码 WSEGSCONVERT 不能从链接编码转换成要求的编码 WSEPDATABAD 给定编码的字符数据不正确 - WSTP 的标头文件 wstp.h 已对 WSError() 作出声明.
范例
基本范例 (1)
#include "wstp.h"
/* send the integer 10 to a link */
void f(WSLINK lp)
{
if(! WSPutInteger(lp, 10))
{
/* check the possible errors */
switch(WSError(lp))
{
case WSEDEAD:
/* the link died unexpectedly */
break;
case WSECLOSED:
/* the other side closed the link */
break;
case WSEOK:
/* no error occurred */
break;
default:
/* ... */
}
}
}