OVH Cloud OVH Cloud

Réseau / PC

6 réponses
Avatar
Audrey
Bonjour,

Peux t -on communiquer entre deux PC via un r=E9seau WIFI ou autre sans
conna=EEtre l'adresse IP ?
Je m'explique :
Il y a une machine S qui envoie une cha=EEne de caract=E8re =E0 une autre
machine C sans conna=EEtre l'adresse IP de la machine C.
Puis la machine C renvoie une autre cha=EEne de caract=E8re sans
conna=EEtre l'adresse de la machine S.

Y a t il un moyen en C# de faire ce type de communication.

Merci.

Audrey

6 réponses

Avatar
Sylvain Lafontaine
Comme point de départ:
http://msdn2.microsoft.com/en-us/library/aa446527.aspx

--
Sylvain Lafontaine, ing.
MVP - Technologies Virtual-PC
E-mail: sylvain aei ca (fill the blanks, no spam please)


"Audrey" wrote in message
news:
Bonjour,

Peux t -on communiquer entre deux PC via un réseau WIFI ou autre sans
connaître l'adresse IP ?
Je m'explique :
Il y a une machine S qui envoie une chaîne de caractère à une autre
machine C sans connaître l'adresse IP de la machine C.
Puis la machine C renvoie une autre chaîne de caractère sans
connaître l'adresse de la machine S.

Y a t il un moyen en C# de faire ce type de communication.

Merci.

Audrey
Avatar
Olivier
Bonjour,

On peut utiliser le broadcast (IPAdress.Broadcast), l'envoi de données
à cette adresse IP envoi les données à toutes les machines du
réseau qui écoute sur le port désiré.

Olivier

On 18 jan, 14:21, "Audrey" wrote:
Bonjour,

Peux t -on communiquer entre deux PC via un réseau WIFI ou autre sans
connaître l'adresse IP ?
Je m'explique :
Il y a une machine S qui envoie une chaîne de caractère à une autre
machine C sans connaître l'adresse IP de la machine C.
Puis la machine C renvoie une autre chaîne de caractère sans
connaître l'adresse de la machine S.

Y a t il un moyen en C# de faire ce type de communication.

Merci.

Audrey


Avatar
Audrey
Merci Sylvain pour ces informations.
Je vais essayer de comprendre .

Sylvain Lafontaine (fill the blanks, no spam please) a écrit :
Comme point de départ:
http://msdn2.microsoft.com/en-us/library/aa446527.aspx

--
Sylvain Lafontaine, ing.
MVP - Technologies Virtual-PC
E-mail: sylvain aei ca (fill the blanks, no spam please)


"Audrey" wrote in message
news:
Bonjour,

Peux t -on communiquer entre deux PC via un réseau WIFI ou autre sans
connaître l'adresse IP ?
Je m'explique :
Il y a une machine S qui envoie une chaîne de caractère à une autre
machine C sans connaître l'adresse IP de la machine C.
Puis la machine C renvoie une autre chaîne de caractère sans
connaître l'adresse de la machine S.

Y a t il un moyen en C# de faire ce type de communication.

Merci.

Audrey


Avatar
Audrey
Bonjour Olivier,
As tu de la documentation ?
Merci.

Olivier a écrit :
Bonjour,

On peut utiliser le broadcast (IPAdress.Broadcast), l'envoi de données
à cette adresse IP envoi les données à toutes les machines du
réseau qui écoute sur le port désiré.

Olivier

On 18 jan, 14:21, "Audrey" wrote:
> Bonjour,
>
> Peux t -on communiquer entre deux PC via un réseau WIFI ou autre sans
> connaître l'adresse IP ?
> Je m'explique :
> Il y a une machine S qui envoie une chaîne de caractère à une aut re
> machine C sans connaître l'adresse IP de la machine C.
> Puis la machine C renvoie une autre chaîne de caractère sans
> connaître l'adresse de la machine S.
>
> Y a t il un moyen en C# de faire ce type de communication.
>
> Merci.
>
> Audrey


Avatar
Olivier
Bonjour,

La doc concernant IPAdress.Broadcast :
http://msdn2.microsoft.com/fr-fr/library/system.net.ipaddress.broadcast(VS. 80).aspx

Concernant broadcast :
http://fr.wikipedia.org/wiki/Broadcast

Pour la partie cliente tu peux utiliser : TcpClient, UdpClient ou
Socket
Exemple TcpClient :
IPEndPoint iep = new IPEndPoint(IPAdress.Broadcast, 4321);
TcpClient client = new TcpClient();
client.Connect(iep);
NetworkStream stream = client.GetStream();
stream.Write(Encoding.UTF8.GetBytes(strToSend), 0,
Encoding.UTF8.GetByteCount(strToSend));

Pour la partie serveur tu as TcpListener ou Socket

Le mieux est surement d'utiliser Socket.
http://dotgnu.org/pnetlib-doc/System/Net/Sockets/Socket.html

Tu as aussi d'autres doc sur MSDN :
http://msdn2.microsoft.com/fr-fr/library/system.net.sockets.tcplistener(VS. 80).aspx
http://msdn2.microsoft.com/fr-fr/library/system.net.sockets.tcpclient(VS.80 ).aspx
http://msdn2.microsoft.com/fr-fr/library/system.net.sockets.socket(VS.80).a spx

Pour ton cas tu aurras juste à spécifier IPAdress.Broadcast comme IP
de destinataire de ton client.

Olivier

On 19 jan, 09:49, "Audrey" wrote:
Bonjour Olivier,
As tu de la documentation ?
Merci.

Olivier a écrit :

> Bonjour,

> On peut utiliser le broadcast (IPAdress.Broadcast), l'envoi de données
> à cette adresse IP envoi les données à toutes les machines du
> réseau qui écoute sur le port désiré.

> Olivier

> On 18 jan, 14:21, "Audrey" wrote:
> > Bonjour,

> > Peux t -on communiquer entre deux PC via un réseau WIFI ou autre sa ns
> > connaître l'adresse IP ?
> > Je m'explique :
> > Il y a une machine S qui envoie une chaîne de caractère à une a utre
> > machine C sans connaître l'adresse IP de la machine C.
> > Puis la machine C renvoie une autre chaîne de caractère sans
> > connaître l'adresse de la machine S.

> > Y a t il un moyen en C# de faire ce type de communication.

> > Merci.

> > Audrey


Avatar
Audrey
Merci Olivier pour ces infos.

Olivier a écrit :
Bonjour,

La doc concernant IPAdress.Broadcast :
http://msdn2.microsoft.com/fr-fr/library/system.net.ipaddress.broadcast(V S.80).aspx

Concernant broadcast :
http://fr.wikipedia.org/wiki/Broadcast

Pour la partie cliente tu peux utiliser : TcpClient, UdpClient ou
Socket
Exemple TcpClient :
IPEndPoint iep = new IPEndPoint(IPAdress.Broadcast, 4321);
TcpClient client = new TcpClient();
client.Connect(iep);
NetworkStream stream = client.GetStream();
stream.Write(Encoding.UTF8.GetBytes(strToSend), 0,
Encoding.UTF8.GetByteCount(strToSend));

Pour la partie serveur tu as TcpListener ou Socket

Le mieux est surement d'utiliser Socket.
http://dotgnu.org/pnetlib-doc/System/Net/Sockets/Socket.html

Tu as aussi d'autres doc sur MSDN :
http://msdn2.microsoft.com/fr-fr/library/system.net.sockets.tcplistener(V S.80).aspx
http://msdn2.microsoft.com/fr-fr/library/system.net.sockets.tcpclient(VS. 80).aspx
http://msdn2.microsoft.com/fr-fr/library/system.net.sockets.socket(VS.80) .aspx

Pour ton cas tu aurras juste à spécifier IPAdress.Broadcast comme IP
de destinataire de ton client.

Olivier

On 19 jan, 09:49, "Audrey" wrote:
> Bonjour Olivier,
> As tu de la documentation ?
> Merci.
>
> Olivier a écrit :
>
> > Bonjour,
>
> > On peut utiliser le broadcast (IPAdress.Broadcast), l'envoi de donn ées
> > à cette adresse IP envoi les données à toutes les machines du
> > réseau qui écoute sur le port désiré.
>
> > Olivier
>
> > On 18 jan, 14:21, "Audrey" wrote:
> > > Bonjour,
>
> > > Peux t -on communiquer entre deux PC via un réseau WIFI ou autre sans
> > > connaître l'adresse IP ?
> > > Je m'explique :
> > > Il y a une machine S qui envoie une chaîne de caractère à une autre
> > > machine C sans connaître l'adresse IP de la machine C.
> > > Puis la machine C renvoie une autre chaîne de caractère sans
> > > connaître l'adresse de la machine S.
>
> > > Y a t il un moyen en C# de faire ce type de communication.
>
> > > Merci.
>
> > > Audrey