Hallo,
Ik ben bezig met het maken van een kleine test applicatie waarbij ik een server en een client schrijf.
Ik heb al voor elkaar dat ik een client op een server connect, welke dan een simpele tekststring ontvangt en terugstuurt.
Wat ik nu graag wil, is achterhalen wat het IP adres van de client is die connect. Ik heb gekeken in de documentatie en kon daar niet iets vinden wat mij een IP-adres oplevert, dus ben ik op internet gaan zoeken waar ik het volgende artikel tegenkwam:
http://www.codeproject.co...the_ip_out_tcpclient.aspx
Echter is deze oplossing niet compitabel met de vorm van C++/CLI die ik hier gebruik. Mijn pogingen om de class te herschrijven hebben ook nog geen succes gehad, ik zit nu met het volgende:
Hierbij krijg ik de volgende foutmelding op de regel met String^ get_IPAddress(void);
error C2143: syntax error : missing ';' before '^'
Om er echter achter te komen waar het probleem precies zit, heb ik mijn functie declaraties ook weggehaald om met het volgende te komen:
Echter hier krijg ik ook al een foutmelding namelijk de volgende:
error C2664: 'System::Net::Sockets::NetworkStream::NetworkStream(System::Net::Sockets::Socket ^)' : cannot convert parameter 1 from 'int' to 'System::Net::Sockets::Socket ^'
Dan nu de vragen die ik hier heb:
1. Is er niet een eenvoudigere wijze om het IP adres van de client te kunnen achterhalen?
2. Hoe los ik deze laatste fout op, ik heb op internet niet een artikel kunnen vinden die mij dergelijke "Constructor" constructies heeft duidelijk gemaakt en weet dus ook niet hoe ik dit moet oplossen.
Ik ben bezig met het maken van een kleine test applicatie waarbij ik een server en een client schrijf.
Ik heb al voor elkaar dat ik een client op een server connect, welke dan een simpele tekststring ontvangt en terugstuurt.
Wat ik nu graag wil, is achterhalen wat het IP adres van de client is die connect. Ik heb gekeken in de documentatie en kon daar niet iets vinden wat mij een IP-adres oplevert, dus ben ik op internet gaan zoeken waar ik het volgende artikel tegenkwam:
http://www.codeproject.co...the_ip_out_tcpclient.aspx
Echter is deze oplossing niet compitabel met de vorm van C++/CLI die ik hier gebruik. Mijn pogingen om de class te herschrijven hebben ook nog geen succes gehad, ik zit nu met het volgende:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| //MyNetworkStream.h #pragma once using namespace System::Net::Sockets; public ref class MyNetworkStream : public NetworkStream { public: MyNetworkStream(void) : NetworkStream(0) { }; MyNetworkStream(System::Net::Sockets::Socket ^ s) : NetworkStream(s) { }; System::Net::Sockets::Socket^ get_MySocket(); String^ get_IPAddress(void); }; |
Hierbij krijg ik de volgende foutmelding op de regel met String^ get_IPAddress(void);
error C2143: syntax error : missing ';' before '^'
Om er echter achter te komen waar het probleem precies zit, heb ik mijn functie declaraties ook weggehaald om met het volgende te komen:
code:
1
2
3
4
5
6
7
8
9
10
| #pragma once using namespace System::Net::Sockets; public ref class MyNetworkStream : public NetworkStream { public: MyNetworkStream(void) : NetworkStream(0) { }; MyNetworkStream(System::Net::Sockets::Socket ^ s) : NetworkStream(s) { }; }; |
Echter hier krijg ik ook al een foutmelding namelijk de volgende:
error C2664: 'System::Net::Sockets::NetworkStream::NetworkStream(System::Net::Sockets::Socket ^)' : cannot convert parameter 1 from 'int' to 'System::Net::Sockets::Socket ^'
Dan nu de vragen die ik hier heb:
1. Is er niet een eenvoudigere wijze om het IP adres van de client te kunnen achterhalen?
2. Hoe los ik deze laatste fout op, ik heb op internet niet een artikel kunnen vinden die mij dergelijke "Constructor" constructies heeft duidelijk gemaakt en weet dus ook niet hoe ik dit moet oplossen.