impossible d'obtenir l'adresse IP d'un TcpListener
3 réponses
herbert
bonjour à tous,
j'utilise un TcpListener qui accept des TcpClient (et non pas des Socket
pour ne pas être embété avec la sécurité)
Mais je ne peux pas avoir l'adresse IP du client.
je peut obtenir un NetworkStream de TcpClient.GetStream(), mais
NetworkStream.Socket est une propriétés protected.
Et avec une classe qui hérite de NetworkStream, DerivedNetworkStream par
exemple, je ne peux pas caster:
DerivedNetworkStream dns = (DerivedNetworkStream)TcpClient.GetStream()
(exception au run-time)
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Paul Bacelar
"herbert" wrote in message news:
bonjour à tous,
j'utilise un TcpListener qui accept des TcpClient (et non pas des Socket pour ne pas être embété avec la sécurité) Mais je ne peux pas avoir l'adresse IP du client. je peut obtenir un NetworkStream de TcpClient.GetStream(), mais NetworkStream.Socket est une propriétés protected. Et avec une classe qui hérite de NetworkStream, DerivedNetworkStream par exemple, je ne peux pas caster: DerivedNetworkStream dns = (DerivedNetworkStream)TcpClient.GetStream() (exception au run-time)
que faire ? merci
C'est TcpClient qu'il faut dériver pas NetworkStream.
-- Paul Bacelar
"herbert" <herbert.vongrunenwald@microsoft.com> wrote in message
news:ezYhEcgCFHA.2884@TK2MSFTNGP15.phx.gbl...
bonjour à tous,
j'utilise un TcpListener qui accept des TcpClient (et non pas des Socket
pour ne pas être embété avec la sécurité)
Mais je ne peux pas avoir l'adresse IP du client.
je peut obtenir un NetworkStream de TcpClient.GetStream(), mais
NetworkStream.Socket est une propriétés protected.
Et avec une classe qui hérite de NetworkStream, DerivedNetworkStream par
exemple, je ne peux pas caster:
DerivedNetworkStream dns = (DerivedNetworkStream)TcpClient.GetStream()
(exception au run-time)
que faire ?
merci
C'est TcpClient qu'il faut dériver pas NetworkStream.
j'utilise un TcpListener qui accept des TcpClient (et non pas des Socket pour ne pas être embété avec la sécurité) Mais je ne peux pas avoir l'adresse IP du client. je peut obtenir un NetworkStream de TcpClient.GetStream(), mais NetworkStream.Socket est une propriétés protected. Et avec une classe qui hérite de NetworkStream, DerivedNetworkStream par exemple, je ne peux pas caster: DerivedNetworkStream dns = (DerivedNetworkStream)TcpClient.GetStream() (exception au run-time)
que faire ? merci
C'est TcpClient qu'il faut dériver pas NetworkStream.
-- Paul Bacelar
Romain Laffitte
Bonjour a tous, concretement vous faites comment pour récupérer l'@ip d un client a partir du tcpclient ?
"Paul Bacelar" wrote:
"herbert" wrote in message news: > bonjour à tous, > > j'utilise un TcpListener qui accept des TcpClient (et non pas des Socket > pour ne pas être embété avec la sécurité) > Mais je ne peux pas avoir l'adresse IP du client. > je peut obtenir un NetworkStream de TcpClient.GetStream(), mais > NetworkStream.Socket est une propriétés protected. > Et avec une classe qui hérite de NetworkStream, DerivedNetworkStream par > exemple, je ne peux pas caster: > DerivedNetworkStream dns = (DerivedNetworkStream)TcpClient.GetStream() > (exception au run-time) > > que faire ? > merci
C'est TcpClient qu'il faut dériver pas NetworkStream.
-- Paul Bacelar
Bonjour a tous,
concretement vous faites comment pour récupérer l'@ip d un client a partir
du tcpclient ?
"Paul Bacelar" wrote:
"herbert" <herbert.vongrunenwald@microsoft.com> wrote in message
news:ezYhEcgCFHA.2884@TK2MSFTNGP15.phx.gbl...
> bonjour à tous,
>
> j'utilise un TcpListener qui accept des TcpClient (et non pas des Socket
> pour ne pas être embété avec la sécurité)
> Mais je ne peux pas avoir l'adresse IP du client.
> je peut obtenir un NetworkStream de TcpClient.GetStream(), mais
> NetworkStream.Socket est une propriétés protected.
> Et avec une classe qui hérite de NetworkStream, DerivedNetworkStream par
> exemple, je ne peux pas caster:
> DerivedNetworkStream dns = (DerivedNetworkStream)TcpClient.GetStream()
> (exception au run-time)
>
> que faire ?
> merci
C'est TcpClient qu'il faut dériver pas NetworkStream.
Bonjour a tous, concretement vous faites comment pour récupérer l'@ip d un client a partir du tcpclient ?
"Paul Bacelar" wrote:
"herbert" wrote in message news: > bonjour à tous, > > j'utilise un TcpListener qui accept des TcpClient (et non pas des Socket > pour ne pas être embété avec la sécurité) > Mais je ne peux pas avoir l'adresse IP du client. > je peut obtenir un NetworkStream de TcpClient.GetStream(), mais > NetworkStream.Socket est une propriétés protected. > Et avec une classe qui hérite de NetworkStream, DerivedNetworkStream par > exemple, je ne peux pas caster: > DerivedNetworkStream dns = (DerivedNetworkStream)TcpClient.GetStream() > (exception au run-time) > > que faire ? > merci
C'est TcpClient qu'il faut dériver pas NetworkStream.
-- Paul Bacelar
Paul Bacelar
J'aurais utilisé "TcpListener.AcceptSocket" pour avoir une socket pénard, mais bon.
Avec TcpListener.AcceptTcpClient
class MyTcpClient : TcpClient { public static IPAddress AdresseClient(TcpClient tcpClient ) { return ((IPEndPoint)tcpClient.Client.RemoteEndPoint).Address; } }
Bonjour a tous, concretement vous faites comment pour récupérer l'@ip d un client a partir du tcpclient ?
"Paul Bacelar" wrote:
> "herbert" wrote in message > news: > > bonjour à tous, > > > > j'utilise un TcpListener qui accept des TcpClient (et non pas des
Socket
> > pour ne pas être embété avec la sécurité) > > Mais je ne peux pas avoir l'adresse IP du client. > > je peut obtenir un NetworkStream de TcpClient.GetStream(), mais > > NetworkStream.Socket est une propriétés protected. > > Et avec une classe qui hérite de NetworkStream, DerivedNetworkStream
par
> > exemple, je ne peux pas caster: > > DerivedNetworkStream dns = (DerivedNetworkStream)TcpClient.GetStream() > > (exception au run-time) > > > > que faire ? > > merci > > C'est TcpClient qu'il faut dériver pas NetworkStream. > > -- > Paul Bacelar > > >
J'aurais utilisé "TcpListener.AcceptSocket" pour avoir une socket pénard,
mais bon.
Avec TcpListener.AcceptTcpClient
class MyTcpClient : TcpClient
{
public static IPAddress AdresseClient(TcpClient tcpClient )
{
return ((IPEndPoint)tcpClient.Client.RemoteEndPoint).Address;
}
}
"Romain Laffitte" <RomainLaffitte@discussions.microsoft.com> wrote in
message news:EB3E99A7-1511-4F92-9897-9E7B497A91D2@microsoft.com...
Bonjour a tous,
concretement vous faites comment pour récupérer l'@ip d un client a partir
du tcpclient ?
"Paul Bacelar" wrote:
> "herbert" <herbert.vongrunenwald@microsoft.com> wrote in message
> news:ezYhEcgCFHA.2884@TK2MSFTNGP15.phx.gbl...
> > bonjour à tous,
> >
> > j'utilise un TcpListener qui accept des TcpClient (et non pas des
Socket
> > pour ne pas être embété avec la sécurité)
> > Mais je ne peux pas avoir l'adresse IP du client.
> > je peut obtenir un NetworkStream de TcpClient.GetStream(), mais
> > NetworkStream.Socket est une propriétés protected.
> > Et avec une classe qui hérite de NetworkStream, DerivedNetworkStream
par
> > exemple, je ne peux pas caster:
> > DerivedNetworkStream dns = (DerivedNetworkStream)TcpClient.GetStream()
> > (exception au run-time)
> >
> > que faire ?
> > merci
>
> C'est TcpClient qu'il faut dériver pas NetworkStream.
>
> --
> Paul Bacelar
>
>
>
Bonjour a tous, concretement vous faites comment pour récupérer l'@ip d un client a partir du tcpclient ?
"Paul Bacelar" wrote:
> "herbert" wrote in message > news: > > bonjour à tous, > > > > j'utilise un TcpListener qui accept des TcpClient (et non pas des
Socket
> > pour ne pas être embété avec la sécurité) > > Mais je ne peux pas avoir l'adresse IP du client. > > je peut obtenir un NetworkStream de TcpClient.GetStream(), mais > > NetworkStream.Socket est une propriétés protected. > > Et avec une classe qui hérite de NetworkStream, DerivedNetworkStream
par
> > exemple, je ne peux pas caster: > > DerivedNetworkStream dns = (DerivedNetworkStream)TcpClient.GetStream() > > (exception au run-time) > > > > que faire ? > > merci > > C'est TcpClient qu'il faut dériver pas NetworkStream. > > -- > Paul Bacelar > > >