请教cuit版主一些问题
cuit版主,您好!我是上次请教您有关wp8中实现adhoc那位,现在我改在win8上来实现adhoc,但是仍然遇到一些问题。不知您是否方便帮忙解答一下,具体问题如下。谢谢您!
目前最大的问题就是:win8中,可否编程实现一个设备同时与多个设备通过wifi direct方式通信?
(1)msdn中介绍说可以使用PeerFinder.FindAllPeerAsync查找周围wifi direct设备,然后再使用PeerFinder.ConnectAsync来建立SocketStream,进而实现wifi direct通信。但是这里有个问题是,使用PeerFinder.ConnectAsync建立起连接的设备,在连接期间不能被其它设备使用PeerFinder.FindAllPeerAsync查找到。这样也就限制成wifi direct设备每次只能和一个设备建立wifi直连通信,而不能同时和多个设备建立wifi direct通信了,如果我想实现同时和多个设备进行wifi direct通信,应该如何做到呢?
(2)使用StreamSocket.ConnectAsync建立起的连接,和使用PeerFinder.ConnectAsync建立起的连接有什么区别吗?哪个可以实现同时与多个设备建立wifi direct连接?
(3)有无api可以控制使用wifi direct通信?底层确定为wifi direct方式通信,那么它与上册StreamSocket是什么关系?可否同时开启多个StreamSocket来使用wifi direct通信?
谢谢您!
祝您工作顺利!生活愉快!
--------------------编程问答-------------------- 1,在连接期间不能被其它设备使用PeerFinder.FindAllPeerAsync查找到
可能指的是在建立连接的过程中而不是已经建立连接以后,我试验过,可以连接多个设备的。
2,你需要补充点OSI 7层协议的知识。
PeerFinder.ConnectAsync是建立连接。
StreamSocket.ConnectAsync是建立通信。
必须要先连接再通信。
3,微软的api隐藏了下层的实现,你可以通过设置allowXXX为ture或false来选择下层用什么协议。
而你通信的时候,不用关心下层。
--------------------编程问答--------------------
谢谢版主。
1,好像有些不对。http://msdn.microsoft.com/en-us/library/windows/apps/windows.networking.proximity.peerfinder.connectasync.aspx
这里面的Remarks部分有两段话是这么说的:
If an app calls the ConnectAsync method to create a connection with a peer, the app will no longer advertise for a connection and will not be found by the FindAllPeersAsync method until the app calls the Close method to close the socket connection.
If you open a socket connection by calling the ConnectAsync method, only one socket connection can be open at a time for the computer. If your app, or another app calls the ConnectAsync method, then the existing socket connection will close.
您试验可以同时连接多个设备,是使用wifi direct进行的吗?他们之间可以同时通信吗?如果一台是被可以同时连接多个设备,那么可否基于wifi direct之上,实现设备之间多对多的同时通信?
2,可否使用PeerFinder.ConnectAsync同时建立与多个设备的连接,然后再和他们同时通信?
3,在模拟器环境下,是否没有wifi direct通信,得使用真机才可以?
--------------------编程问答-------------------- 我是用peerfinder,但下层应用是用的蓝牙。我没有两台平板,所以测试不了wifi direct
你要明白,peerfinder只负责连接,但连接的协议由AllowXXX来定。
模拟器肯定是没有wifi direct的 --------------------编程问答--------------------
您当时试验连接多个设备,是采用哪种连接方式?wifi direct还是蓝牙?一台设备可以基于wifi direct或者蓝牙基础上,同时连接多个设备吗?它们可以同时进行通信吗?
--------------------编程问答-------------------- 我用的蓝牙,可以。 --------------------编程问答--------------------
那么您了解wifi direct可以吗?
--------------------编程问答--------------------
我没有设备,测试不了。 --------------------编程问答--------------------
我用的蓝牙,可以。
那么您了解wifi direct可以吗?
我没有设备,测试不了。
这样啊,那么您当时使用蓝牙,测试多个设备连接,测试设备使用的是su易做图ce还是其它?
--------------------编程问答--------------------
我用的蓝牙,可以。
那么您了解wifi direct可以吗?
我没有设备,测试不了。
这样啊,那么您当时使用蓝牙,测试多个设备连接,测试设备使用的是su易做图ce还是其它?
我用的蓝牙,可以。
那么您了解wifi direct可以吗?
我没有设备,测试不了。
这样啊,那么您当时使用蓝牙,测试多个设备连接,测试设备使用的是su易做图ce还是其它?
Lumia 920 --------------------编程问答--------------------
我用的蓝牙,可以。
那么您了解wifi direct可以吗?
我没有设备,测试不了。
这样啊,那么您当时使用蓝牙,测试多个设备连接,测试设备使用的是su易做图ce还是其它?
我用的蓝牙,可以。
那么您了解wifi direct可以吗?
我没有设备,测试不了。
这样啊,那么您当时使用蓝牙,测试多个设备连接,测试设备使用的是su易做图ce还是其它?
Lumia 920
好的哈,谢谢版主悉心解惑。
--------------------编程问答--------------------
我用的蓝牙,可以。
版主,您好!
我今天想到一个问题。我现在手里也没有su易做图ce,估计还得等一段时间才有,所以模拟不了wifi direct功能。我想买一个具有wifi direct功能的无线网卡,然后装到机器上,操作系统是win8的,您觉得这样模拟出像su易做图ce这样的具有wifi direct功能吗?
谢谢您!
--------------------编程问答--------------------
我用的蓝牙,可以。
版主,您好!
我今天想到一个问题。我现在手里也没有su易做图ce,估计还得等一段时间才有,所以模拟不了wifi direct功能。我想买一个具有wifi direct功能的无线网卡,然后装到机器上,操作系统是win8的,您觉得这样模拟出像su易做图ce这样的具有wifi direct功能吗?
谢谢您!
当然可以 --------------------编程问答--------------------
我用的蓝牙,可以。
版主,您好!
我今天想到一个问题。我现在手里也没有su易做图ce,估计还得等一段时间才有,所以模拟不了wifi direct功能。我想买一个具有wifi direct功能的无线网卡,然后装到机器上,操作系统是win8的,您觉得这样模拟出像su易做图ce这样的具有wifi direct功能吗?
谢谢您!
当然可以
好的,谢谢版主。
这两天一直在找能支持wifi direct的无线网卡USB,好像不是很好找。
--------------------编程问答-------------------- 最近在学习adhoc在linux的使用,发现版主的名字?我们是同一个学校?
补充:移动开发 , Windows Phone