Hi,I found the reason. In OnReceive,I used a fixed length buffer to call Receive function,But in fact,sometimes the incoming data's length is great than the buffer length.So there was some data remained in system buffer,and the app didnt get them,I think it made OnReceive not be called anymore. Thanx everybody's advice!!