次の方法で共有


NetworkStream コンストラクタ (Socket, FileAccess, Boolean)

指定したアクセス権と指定した Socket 所有権で、指定した SocketNetworkStream クラスの新しいインスタンスを作成します。

名前空間: System.Net.Sockets
アセンブリ: System (system.dll 内)

構文

'宣言
Public Sub New ( _
    socket As Socket, _
    access As FileAccess, _
    ownsSocket As Boolean _
)
'使用
Dim socket As Socket
Dim access As FileAccess
Dim ownsSocket As Boolean

Dim instance As New NetworkStream(socket, access, ownsSocket)
public NetworkStream (
    Socket socket,
    FileAccess access,
    bool ownsSocket
)
public:
NetworkStream (
    Socket^ socket, 
    FileAccess access, 
    bool ownsSocket
)
public NetworkStream (
    Socket socket, 
    FileAccess access, 
    boolean ownsSocket
)
public function NetworkStream (
    socket : Socket, 
    access : FileAccess, 
    ownsSocket : boolean
)

パラメータ

  • access
    FileAccess 値のビットごとの組み合わせです。提供された Socket に対する NetworkStream に付与されているアクセス許可の種類を指定します。
  • ownsSocket
    NetworkStreamSocket の所有権を取得する場合は true。それ以外の場合は false

例外

例外の種類 条件

ArgumentNullException

socket が null 参照 (Visual Basic では Nothing) です。

IOException

socket が接続されていません。

または

socket の SocketType プロパティが SocketType.Stream ではありません。

または

socket が非ブロック状態です。

解説

読み取り/書き込みアクセス権を持つ NetworkStream が、指定した Socket に対して作成されます。ownsSocket パラメータの値が true の場合、NetworkStream は基になる Socket の所有権を取得します。NetworkStream.Close メソッドを呼び出すと、基になる Socket も閉じます。

access パラメータが、NetworkStreamCanRead プロパティおよび CanWrite プロパティを設定します。Write を指定すると、NetworkStreamWrite メソッドを呼び出すことができます。Read を指定すると、NetworkStreamRead メソッドを呼び出すことができます。ReadWrite を指定した場合は、両方のメソッド呼び出しが許可されます。

使用例

Socket の読み取りと書き込みを行うためのアクセス許可を持つ NetworkStream を作成するコード例を次に示します。ownsSocket パラメータを true に設定することで、Socket の所有権がこの NetworkStream に付与されています。

mySocket.Connect(myIpEndPoint)

' Create the NetworkStream for communicating with the remote host.
Dim myNetworkStream As NetworkStream

If networkStreamOwnsSocket Then
   myNetworkStream = New NetworkStream(mySocket, FileAccess.ReadWrite, True)
Else
   myNetworkStream = New NetworkStream(mySocket, FileAccess.ReadWrite)
End If
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);     
}
    
mySocket->Connect( myIpEndPoint );

// Create the NetworkStream for communicating with the remote host.
NetworkStream^ myNetworkStream;
if ( networkStreamOwnsSocket )
{
   myNetworkStream = gcnew NetworkStream( mySocket,FileAccess::ReadWrite,true );
}
else
{
   myNetworkStream = gcnew NetworkStream( mySocket,FileAccess::ReadWrite );
}
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 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。

バージョン情報

.NET Framework

サポート対象 : 2.0、1.1、1.0

.NET Compact Framework

サポート対象 : 2.0、1.0

参照

関連項目

NetworkStream クラス
NetworkStream メンバ
System.Net.Sockets 名前空間
FileAccess
CanRead
CanWrite
Close
Read
Write