NetworkStream Constructor (Socket, FileAccess)
Creates a new instance of the NetworkStream class for the specified Socket with the specified access rights.
Assembly: System (in System.dll)
Parameters
- socket
- Type: System.Net.Sockets.Socket
The Socket that the NetworkStream will use to send and receive data.
- access
- Type: System.IO.FileAccess
A bitwise combination of the FileAccess values that specify the type of access given to the NetworkStream over the provided Socket.
| Exception | Condition |
|---|---|
| ArgumentNullException |
The socket parameter is null. |
| IOException |
The socket parameter is not connected. -or- the SocketType property of the socket parameter is not SocketType.Stream. -or- the socket parameter is in a nonblocking state. |
The NetworkStream is created with the specified access to the specified Socket. With this constructor, the NetworkStream does not own the underlying Socket, so calling the Close() method does not close the underlying Socket.
The access parameter sets the CanRead and CanWrite properties of the NetworkStream. If you specify Write, then the NetworkStream allows calls to the Write method. If you specify Read, then the NetworkStream allows calls to the Read method. If you specify ReadWrite, both method calls are allowed.
The following code example creates a NetworkStream with the ability to read and write to the Socket.
// Example for creating a NetworkStreams
mySocket.Connect(myIpEndPoint);
// Create the NetworkStream for communicating with the remote host.
NetworkStream myNetworkStream;
if (networkStreamOwnsSocket){
myNetworkStream = new NetworkStream(mySocket, FileAccess.ReadWrite, true);
}
else{
myNetworkStream = new NetworkStream(mySocket, FileAccess.ReadWrite);
}
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.