Following code run fine without active object but when i put
into active object(A.O) application close with returning iStatus -18..Please check code & Reply Thank you!!!!
TInt KTestPort = 80;
TInetAddr addr(KInetAddrAny, KTestPort);
RSocketServ socketServ;
RSocket blank;
RSocket listener;
//Connect State(In RunL Different state this Method Called 1st )
void Connect ()
{
socketServ.Connect();
listener.Open(socketServ, KAfInet, KSockStream, KProtocolInetTcp);
listener.Bind(addr);
listener.Listen(1);
//here state change to ListenAccept
SetActive();
}
ListenAccept state( this method call from RunL)
void ListenAccept ()
{
blank.Open(socketServ);
listener.Accept(blank, iStatus );
*******CODE BLOCK HERE.......******return iStatus -18.
//To avoid blocking code instead of User::WaitForRequest(iStatus);
//added some delay using RTimer::After(2 sec.)
/here state change to ReadData
SetActive();
}
void ReadData Method( This method called continuosly after every 2sec.)
{
if(iStatus != KErrNone)
User::Leave(KErrGeneral);
TBool running = ETrue;
//TBool boolean;
TBuf8<256> buffer;
TSockXfrLength len;
blank.RecvOneOrMore(buffer, 0, iStatus, len);
// User::WaitForRequest(iStatus);
//added some delay using RTimer::After(2 sec.)
if(iStatus != KErrNone)
User::Leave(KErrGeneral);
logMe(buffer);//For just Display Recvdata
iblank.Close();
ilistener.Close();
iConnection.Close();
//here state change again to open connection then
SetActive();
}






