2 cxh194311 cxh194311 于 2017.01.11 16:02 提问

IdTCPServerExecute函数接受不到数据

void __fastcall TfrmMain::IdTCPServerExecute(TIdContext *AContext)
{
CoInitialize(NULL);
try

    TCommHead Head = RecvHead(AContext->Connection);
    TCommRequest Request = RecvRequest(AContext->Connection, Head);
    TCommAnswer Answer;
    Answer.Init();

switch (Head.CommType)
{
case cs_Comm_Request_OpenSQL:
{
TADOConnection *Connection = FPoolerMan->LockConnection(
AContext->Connection->Socket->Binding->Handle, Request.ConnectID);

            if ( Connection == NULL )
            {
                Answer.ErrorNo = -1;
                Answer.ErrorInfo = SERVER_IS_BUSY;

                SendAnswer(Head.CommType, Answer, AContext->Connection);
            }
            else
            {

                    Answer.ErrorNo = -1;
                    Answer.ErrorInfo = "无效的SQL";

                    SendAnswer(Head.CommType, Answer, AContext->Connection);

                    WriteLog("IP:" + AContext->Binding()->PeerIP + " " + Request.CommandText);

                }
            }

            break;
        }
        case cs_Comm_Request_OpenFunc:  // 执行功能,返回结果集
        {
            TADOConnection *Connection = FPoolerMan->LockConnection(
                AContext->Connection->Socket->Binding->Handle, Request.ConnectID);

            if ( Connection == NULL )
            {
                Answer.ErrorNo = -1;
                Answer.ErrorInfo = SERVER_IS_BUSY;

                SendAnswer(Head.CommType, Answer, AContext->Connection);
            }
            else
            {
                TMemoryStream *mm = new TMemoryStream();
                try
                {


                    SendAnswer(Head.CommType, Answer, AContext->Connection, mm);

                }
                __finally
                {}
            }

            break;
        }


        }
        default:
            ;
    }
}
__finally
{
    CoUninitialize;
}

}

1个回答

cxh194311
cxh194311   2017.01.11 16:03

如果客户端连接300个左右有时候就接受不到数据 大神求解

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
Lua数据接收问题
最近在改公司的游戏端。游戏端是Cocos2dx-Lua写的。项目是native嵌入lua的方式。 从app进入游戏时,传入json格式的启动游戏参数,在Lua获取参数的过程中遇到了一个很奇怪的问题。其中有一个参数为可变数组,例如:[1,2,3,4]。安卓端与ios端都传入了这个参数,app端数据打印正确。但是到了Lua中解析ios传过来这个参数却为空,没有想明白其中的缘由,怀疑是ios编码的区别。记
php $_FIFLES系统函数
-
GCDAsyncSocket 接收不到数据
GCDAsyncSocket 接收不到数据
json数据在前台接收不到数据的解决方法
在学习SSH项目商城的时候,通过查询数据库的数据,并将数据打包成json格式并在前台显示时出现了 Struts has detected an unhandled exception: Messages:failed to lazily initialize a collection of role: cn.it.shop.model.Account.categories, could not
thinkphp3.2 后台接收安卓前端传参出问题(取不到参数数据)
场景: thinkphp3.2.3 后台接口为非url传参,前端说是用post传参的问题描述:接口取不到参数数据,用 I()函数,$_GET,$_REQUEST,$_POST等都取不 到数据原因:一个PHP老同事也遇到过相同问题。原因后面详述解决:后台用 $data = file_get_contents("php://input"); 来获取前端
php $_POST接受不到数据,$_GET能接受到数据问题
1.检查头信息content-type是不是为“content-type:application/x-www-form-urlencoded" 这种传输是以表单的方式提交数据php使用$_POST方式接受。 2.如果头信息content-type是不是为“content-type:application/json"这种传输是以json方式提交数据,php需要使用file_get_contents
php 只能接受get 接受不到POST值
一、PHP获取POST数据的几种方法方法1、最常见的方法是:$_POST['fieldname'];说明:只能接收Content-Type: application/x-www-form-urlencoded提交的数据解释:也就是表单POST过来的数据方法2、file_get_contents("php://input");说明:允许读取 POST 的原始数据。(用接口测试工具的时候如果 head...
php curl post 短信接口那边接收不到数据
昨天遇到一个很奇怪的问题,用的curl post发送数据到短信接口那边的时候总是报错,空指针异常,后来我本地测试,用$_POST可以接收到数据 function curl_post($uri,$data){ $ch = curl_init (); curl_setopt ( $ch, CURLOPT_URL, $uri ); curl_setopt ( $ch, CURLOPT_POST,
thinkPHP接收不到&_POST变量问题
我的表单使用POST传递参数(其中包含一个隐藏域)在接收处通过TP model中自带的方法$this->create可以接收到数据但是接收不到隐藏域的值 不使用create方法,直接通过echo $_POST[xxx]时 没有结果显示 不知道问题出在哪里希望看到得朋友们能帮我解答一下先谢谢了 
串口通信----串口接收框接收不到数据
在进行串口调试时,数据发送没有问题,da