"Valerie Hough" <> wrote ...
> However, when I run both applications from Vista machines, the server
> socket
> gets set up, but when my client tries to connect, I get the following
> exception:
> Error message: An address incompatible with the requested protocol was
> used
Hi Chris,
You need to create the socket as a IPv6 Socket:
Socket s = new Socket( AddressFamily.InterNetwork, ... etc ... );
and set the IPV6_V6ONLY Socket option to FALSE:
sock.SetSocketOption(SocketOptionLevel.IPv6, (SocketOptionName)27, 0);
In Vista and Server 2008, the TCP/IP stack will create IPv6 Sockets, by
default. To make them accept IPv4 comms, you need to configure them as "dual
mode" sockets, IPv6 *and&* IPv4. Your socket will always be IPv6 in its
heart-of-hearts; but with IPV6_V6ONLY turned off, it will handle IPv4 stuff
as well.
There's a great article describing this in more detail (helped me to
understand it, at last):
http://blogs.msdn.com/wndp/archive/2...e-sockets.aspx
Hope it helps,
--
Andrew McLaren
amclar (at) optusnet dot com dot au