报10014 系统检测到在一个调用中尝试使用指针参数时的无效指针地址

代码如下:
  调用连接成功之后执行boost::asio::async_read(socket,boost::asio:buffer(m_pPackBuffer,m_iGetLen),boost::asio::transfer_all(),boost::bind(&ClientSession::onRead,shared_from_this(),boost::asio::placeholders::error,boost::asio::placehoders::bytes_transferred));
每次返回这个函数之后出错,error.message()为: 错误代码 10014,系统检测到在一个调用中尝试使用指针参数时的无效指针地址
void ClientSession::onRead(const boost::system::error_code &error,size_t bytes_transferred)
{
  if(!error)
{
  tcpClient->onMessage(m_pPackBuffer,(int)bytes_transferred);
 boost::asio::async_read(socket,boost::asio:buffer(m_pPackBuffer,m_iGetLen),boost::asio::transfer_all(),boost::bind(&ClientSession::onRead,shared_from_this(),boost::asio::placeholders::error,boost::asio::placehoders::bytes_transferred));
}
else
{
  handleProcException(error.message());
 return;
}
}
之前都在正常,移植到新项目就运行连接之后执行读操作就报错,请问是什么原因,怎么解决?

你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,技术专家团超时未为您做出解答

本次提问扣除的有问必答次数,将会以问答VIP体验卡(1次有问必答机会、商城购买实体图书享受95折优惠)的形式为您补发到账户。

​​​​因为有问必答VIP体验卡有效期仅有1天,您在需要使用的时候【私信】联系我,我会为您补发。