利用管道与Ping.exe通信,发现阻塞,该怎么解决

利用管道与Ping.exe通信,发现阻塞
我利用CreatePipe创建了一个管道,再利用CreateProcess创建了Windows的Ping.exe进程,   我想利用那个管道来得到Ping.exe执行的结果,得到Ping执行结果我是利用了ReadFile(PipeRead,   pucBuffer,   BUFFERSIZE,   &dwReadCount,   NULL)来得到它的执行结果,   但是我发现一个问题,在有些时候程序会阻塞在ReadFile这个函数里,   请各位高手指点,有什么办法能让它不阻塞!   阻塞的原因是因为Ping.exe还没有Ping到对方,即还没有向管道中写数据,   这个时候ReadFile占用了管道!

------解决方案--------------------
ReadFile会一直等待有信息出现,这就阻塞了。可以先用PeekNamedPipe进行测试管道内是否有信息再读,就不会阻塞了