We zijn op school bezig met een project. Voor dit project is een computer ingesteld als wifi access point middels een tooltje genaamd Virtual Router (http://virtualrouter.codeplex.com/). We hebben voor deze tool gekozen omdat deze als enige een service aanbied die ons een lijst met verbonden clients terug kan geven (middels een getConnectedPeers() methode), en omdat deze volledig in C# is geschreven, waarmee wij redelijk bekend zijn. En dat is precies wat we nodig hebben: We willen namelijk in een eigen programma het IP-adres, pc naam en eventueel het MAC-adres ophalen van alle verbonden clients zodat deze uiteindelijk op een al bestaande touchtafel getoond kunnen worden (Microsoft surface idee). We hebben een kleine testtool gemaakt om de service die Virtual Router aanbied uit te lezen en de informatie die wij willen hebben in de commandline te tonen. Dit is puur voor de test:
Nu werkt Virtual Router niet al te best. Bovenstaande code werkt dan ook niet; de lijst met connected peers is leeg. Dit komt omdat Virtual Router wel een AP opzet, maar geen IP adressen wil uitdelen aan de clients. Soms start VR zelfs helemaal niet op ("Virtual Router can not be started"); Niet een al te stabiel programma dus. Alle workarounds die op codeplex bij het project staan hebben we geprobeerd. Soms met succes, maar soms werkt het dan na een reboot al niet meer. Bepaald niet stabiel dus.
Andere soortgelijke programma's bieden daarentegen geen service aan waarmee we een simpele lijst met verbonden clients kunnen ophalen. Een standaard Microsoft ad-hoc netwerk is ook geen optie, omdat Android devices niet kunnen verbinden met een ad-hoc netwerk, en wij werken juist met android telefoons.
Wat wij dus willen is simpelweg van een pc een access point maken en een lijst ophalen met verbonden clients. Naar ons idee zou dit toch niet al te moeilijk moeten zijn maar we hebben er als tweetal nu al in totaal zo'n 4 dagen van 6 uur in gestoken maar krijgen het niet voor elkaar.
Iemand een handige oplossing voor dit probleem of ervaring met Virtual Router?
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| static void Main(string[] args) { VirtualRouterHostClient client = new VirtualRouterHostClient(); var peers = client.GetConnectedPeers(); // Dit is zoals in documentatie van de service foreach (var p in peers) { var ipinfo = IPInfo.GetIPInfo(p.MacAddress); Console.WriteLine(ipinfo.MacAddress); Console.WriteLine(ipinfo.IPAddress); Console.WriteLine(ipinfo.HostName); Console.WriteLine("-------------------------------------"); } Console.ReadLine(); } |
Nu werkt Virtual Router niet al te best. Bovenstaande code werkt dan ook niet; de lijst met connected peers is leeg. Dit komt omdat Virtual Router wel een AP opzet, maar geen IP adressen wil uitdelen aan de clients. Soms start VR zelfs helemaal niet op ("Virtual Router can not be started"); Niet een al te stabiel programma dus. Alle workarounds die op codeplex bij het project staan hebben we geprobeerd. Soms met succes, maar soms werkt het dan na een reboot al niet meer. Bepaald niet stabiel dus.
Andere soortgelijke programma's bieden daarentegen geen service aan waarmee we een simpele lijst met verbonden clients kunnen ophalen. Een standaard Microsoft ad-hoc netwerk is ook geen optie, omdat Android devices niet kunnen verbinden met een ad-hoc netwerk, en wij werken juist met android telefoons.
Wat wij dus willen is simpelweg van een pc een access point maken en een lijst ophalen met verbonden clients. Naar ons idee zou dit toch niet al te moeilijk moeten zijn maar we hebben er als tweetal nu al in totaal zo'n 4 dagen van 6 uur in gestoken maar krijgen het niet voor elkaar.
Iemand een handige oplossing voor dit probleem of ervaring met Virtual Router?