为什么命名管道通信在我自己的电脑上可以,在不同的两台电脑上就不行呢?分不多了,不好意思!
我写的两个程序(一个服务端和一个客户端),在我自己的电脑上可以实现相互通信。
我想在我和同学的电脑上试一下。
我把服务端放在我自己的电脑上(win7),客户端放在室友的电脑上(win7)。
结果我这边开启后等待,室友那边WaitForSingleObject(TEXT("\\\\ChaoV-PC\\piep\\MyPipe"),NMPWAIT_WAIT_FOREVER)可以成功
到了CreateFile(TEXT("\\\\chao-PC\\pipe\\MyPipe"),GENERIC_READ|GENERIC_WRITE,0,
NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
就阻塞了,不知为什么?
明明在我自己电脑上可以的,为什么放在两台电脑上就不行了呢?
是不是什么防火墙设置问题?还是其他问题?
[解决办法]
权限?
[解决办法]
WaitForSingleObject(TEXT("\\\\ChaoV-PC\\piep\\MyPipe"),NMPWAIT_WAIT_FOREVER)可以成功
到了CreateFile(TEXT("\\\\chao-PC\\pipe\\MyPipe"),GENERIC_READ|GENERIC_WRITE,0,
NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
[解决办法]
http://msdn.microsoft.com/en-us/library/windows/desktop/aa365592%28v=vs.85%29.aspx
Named Pipe Client
学习上面的 MSDN 链接,