SerialPort SerialPort SerialPort SerialPort Class

Definizione

Rappresenta una risorsa di porta seriale.Represents a serial port resource.

public ref class SerialPort : System::ComponentModel::Component
public class SerialPort : System.ComponentModel.Component
type SerialPort = class
    inherit Component
Public Class SerialPort
Inherits Component
Ereditarietà

Esempi

Nell'esempio di codice riportato di seguito viene illustrato SerialPort l'utilizzo della classe per consentire a due utenti di chattare da due computer distinti connessi tramite un cavo modem null.The following code example demonstrates the use of the SerialPort class to allow two users to chat from two separate computers connected by a null modem cable. In questo esempio, agli utenti vengono richieste le impostazioni della porta e un nome utente prima di chattare.In this example, the users are prompted for the port settings and a username before chatting. Per ottenere tutte le funzionalità di questo esempio, è necessario che entrambi i computer eseguano il programma.Both computers must be executing the program to achieve full functionality of this example.

#using <System.dll>

using namespace System;
using namespace System::IO::Ports;
using namespace System::Threading;

public ref class PortChat
{
private:
    static bool _continue;
    static SerialPort^ _serialPort;

public:
    static void Main()
    {
        String^ name;
        String^ message;
        StringComparer^ stringComparer = StringComparer::OrdinalIgnoreCase;
        Thread^ readThread = gcnew Thread(gcnew ThreadStart(PortChat::Read));

        // Create a new SerialPort object with default settings.
        _serialPort = gcnew SerialPort();

        // Allow the user to set the appropriate properties.
        _serialPort->PortName = SetPortName(_serialPort->PortName);
        _serialPort->BaudRate = SetPortBaudRate(_serialPort->BaudRate);
        _serialPort->Parity = SetPortParity(_serialPort->Parity);
        _serialPort->DataBits = SetPortDataBits(_serialPort->DataBits);
        _serialPort->StopBits = SetPortStopBits(_serialPort->StopBits);
        _serialPort->Handshake = SetPortHandshake(_serialPort->Handshake);

        // Set the read/write timeouts
        _serialPort->ReadTimeout = 500;
        _serialPort->WriteTimeout = 500;

        _serialPort->Open();
        _continue = true;
        readThread->Start();

        Console::Write("Name: ");
        name = Console::ReadLine();

        Console::WriteLine("Type QUIT to exit");

        while (_continue)
        {
            message = Console::ReadLine();

            if (stringComparer->Equals("quit", message))
            {
                _continue = false;
            }
            else
            {
                _serialPort->WriteLine(
                    String::Format("<{0}>: {1}", name, message) );
            }
        }

        readThread->Join();
        _serialPort->Close();
    }

    static void Read()
    {
        while (_continue)
        {
            try
            {
                String^ message = _serialPort->ReadLine();
                Console::WriteLine(message);
            }
            catch (TimeoutException ^) { }
        }
    }

    static String^ SetPortName(String^ defaultPortName)
    {
        String^ portName;

        Console::WriteLine("Available Ports:");
        for each (String^ s in SerialPort::GetPortNames())
        {
            Console::WriteLine("   {0}", s);
        }

        Console::Write("Enter COM port value (Default: {0}): ", defaultPortName);
        portName = Console::ReadLine();

        if (portName == "")
        {
            portName = defaultPortName;
        }
        return portName;
    }

    static Int32 SetPortBaudRate(Int32 defaultPortBaudRate)
    {
        String^ baudRate;

        Console::Write("Baud Rate(default:{0}): ", defaultPortBaudRate);
        baudRate = Console::ReadLine();

        if (baudRate == "")
        {
            baudRate = defaultPortBaudRate.ToString();
        }

        return Int32::Parse(baudRate);
    }

    static Parity SetPortParity(Parity defaultPortParity)
    {
        String^ parity;

        Console::WriteLine("Available Parity options:");
        for each (String^ s in Enum::GetNames(Parity::typeid))
        {
            Console::WriteLine("   {0}", s);
        }
		
        Console::Write("Enter Parity value (Default: {0}):", defaultPortParity.ToString());
        parity = Console::ReadLine();

        if (parity == "")
        {
            parity = defaultPortParity.ToString();
        }

        return (Parity)Enum::Parse(Parity::typeid, parity);
    }

    static Int32 SetPortDataBits(Int32 defaultPortDataBits)
    {
        String^ dataBits;

        Console::Write("Enter DataBits value (Default: {0}): ", defaultPortDataBits);
        dataBits = Console::ReadLine();

        if (dataBits == "")
        {
            dataBits = defaultPortDataBits.ToString();
        }

        return Int32::Parse(dataBits);
    }

    static StopBits SetPortStopBits(StopBits defaultPortStopBits)
    {
        String^ stopBits;

        Console::WriteLine("Available Stop Bits options:");
        for each (String^ s in Enum::GetNames(StopBits::typeid))
        {
            Console::WriteLine("   {0}", s);
        }

        Console::Write("Enter StopBits value (None is not supported and \n" +
            "raises an ArgumentOutOfRangeException. \n (Default: {0}):", defaultPortStopBits.ToString());
        stopBits = Console::ReadLine();

        if (stopBits == "")
        {
            stopBits = defaultPortStopBits.ToString();
        }

        return (StopBits)Enum::Parse(StopBits::typeid, stopBits);
    }

    static Handshake SetPortHandshake(Handshake defaultPortHandshake)
    {
        String^ handshake;

        Console::WriteLine("Available Handshake options:");
        for each (String^ s in Enum::GetNames(Handshake::typeid))
        {
            Console::WriteLine("   {0}", s);
        }

        Console::Write("Enter Handshake value (Default: {0}):", defaultPortHandshake.ToString());
        handshake = Console::ReadLine();

        if (handshake == "")
        {
            handshake = defaultPortHandshake.ToString();
        }

        return (Handshake)Enum::Parse(Handshake::typeid, handshake);
    }
};

int main()
{
    PortChat::Main();
}
// Use this code inside a project created with the Visual C# > Windows Desktop > Console Application template.
// Replace the code in Program.cs with this code.

using System;
using System.IO.Ports;
using System.Threading;

public class PortChat
{
    static bool _continue;
    static SerialPort _serialPort;

    public static void Main()
    {
        string name;
        string message;
        StringComparer stringComparer = StringComparer.OrdinalIgnoreCase;
        Thread readThread = new Thread(Read);

        // Create a new SerialPort object with default settings.
        _serialPort = new SerialPort();

        // Allow the user to set the appropriate properties.
        _serialPort.PortName = SetPortName(_serialPort.PortName);
        _serialPort.BaudRate = SetPortBaudRate(_serialPort.BaudRate);
        _serialPort.Parity = SetPortParity(_serialPort.Parity);
        _serialPort.DataBits = SetPortDataBits(_serialPort.DataBits);
        _serialPort.StopBits = SetPortStopBits(_serialPort.StopBits);
        _serialPort.Handshake = SetPortHandshake(_serialPort.Handshake);

        // Set the read/write timeouts
        _serialPort.ReadTimeout = 500;
        _serialPort.WriteTimeout = 500;

        _serialPort.Open();
        _continue = true;
        readThread.Start();

        Console.Write("Name: ");
        name = Console.ReadLine();

        Console.WriteLine("Type QUIT to exit");

        while (_continue)
        {
            message = Console.ReadLine();

            if (stringComparer.Equals("quit", message))
            {
                _continue = false;
            }
            else
            {
                _serialPort.WriteLine(
                    String.Format("<{0}>: {1}", name, message));
            }
        }

        readThread.Join();
        _serialPort.Close();
    }

    public static void Read()
    {
        while (_continue)
        {
            try
            {
                string message = _serialPort.ReadLine();
                Console.WriteLine(message);
            }
            catch (TimeoutException) { }
        }
    }

    // Display Port values and prompt user to enter a port.
    public static string SetPortName(string defaultPortName)
    {
        string portName;

        Console.WriteLine("Available Ports:");
        foreach (string s in SerialPort.GetPortNames())
        {
            Console.WriteLine("   {0}", s);
        }

        Console.Write("Enter COM port value (Default: {0}): ", defaultPortName);
        portName = Console.ReadLine();

        if (portName == "" || !(portName.ToLower()).StartsWith("com"))
        {
            portName = defaultPortName;
        }
        return portName;
    }
    // Display BaudRate values and prompt user to enter a value.
    public static int SetPortBaudRate(int defaultPortBaudRate)
    {
        string baudRate;

        Console.Write("Baud Rate(default:{0}): ", defaultPortBaudRate);
        baudRate = Console.ReadLine();

        if (baudRate == "")
        {
            baudRate = defaultPortBaudRate.ToString();
        }

        return int.Parse(baudRate);
    }

    // Display PortParity values and prompt user to enter a value.
    public static Parity SetPortParity(Parity defaultPortParity)
    {
        string parity;

        Console.WriteLine("Available Parity options:");
        foreach (string s in Enum.GetNames(typeof(Parity)))
        {
            Console.WriteLine("   {0}", s);
        }

        Console.Write("Enter Parity value (Default: {0}):", defaultPortParity.ToString(), true);
        parity = Console.ReadLine();

        if (parity == "")
        {
            parity = defaultPortParity.ToString();
        }

        return (Parity)Enum.Parse(typeof(Parity), parity, true);
    }
    // Display DataBits values and prompt user to enter a value.
    public static int SetPortDataBits(int defaultPortDataBits)
    {
        string dataBits;

        Console.Write("Enter DataBits value (Default: {0}): ", defaultPortDataBits);
        dataBits = Console.ReadLine();

        if (dataBits == "")
        {
            dataBits = defaultPortDataBits.ToString();
        }

        return int.Parse(dataBits.ToUpperInvariant());
    }

    // Display StopBits values and prompt user to enter a value.
    public static StopBits SetPortStopBits(StopBits defaultPortStopBits)
    {
        string stopBits;

        Console.WriteLine("Available StopBits options:");
        foreach (string s in Enum.GetNames(typeof(StopBits)))
        {
            Console.WriteLine("   {0}", s);
        }

        Console.Write("Enter StopBits value (None is not supported and \n" +
         "raises an ArgumentOutOfRangeException. \n (Default: {0}):", defaultPortStopBits.ToString());
        stopBits = Console.ReadLine();
       
        if (stopBits == "" )
        {
            stopBits = defaultPortStopBits.ToString();
        }

        return (StopBits)Enum.Parse(typeof(StopBits), stopBits, true);
    }
    public static Handshake SetPortHandshake(Handshake defaultPortHandshake)
    {
        string handshake;

        Console.WriteLine("Available Handshake options:");
        foreach (string s in Enum.GetNames(typeof(Handshake)))
        {
            Console.WriteLine("   {0}", s);
        }

        Console.Write("Enter Handshake value (Default: {0}):", defaultPortHandshake.ToString());
        handshake = Console.ReadLine();

        if (handshake == "")
        {
            handshake = defaultPortHandshake.ToString();
        }

        return (Handshake)Enum.Parse(typeof(Handshake), handshake, true);
    }
}
' Use this code inside a project created with the Visual Basic > Windows Desktop > Console Application template.
' Replace the default code in Module1.vb with this code. Then right click the project in Solution Explorer,
' select Properties, and set the Startup Object to PortChat.

Imports System.IO.Ports
Imports System.Threading

Public Class PortChat
    Shared _continue As Boolean
    Shared _serialPort As SerialPort

    Public Shared Sub Main()
        Dim name As String
        Dim message As String
        Dim stringComparer__1 As StringComparer = StringComparer.OrdinalIgnoreCase
        Dim readThread As New Thread(AddressOf Read)

        ' Create a new SerialPort object with default settings.
        _serialPort = New SerialPort()

        ' Allow the user to set the appropriate properties.
        _serialPort.PortName = SetPortName(_serialPort.PortName)
        _serialPort.BaudRate = SetPortBaudRate(_serialPort.BaudRate)
        _serialPort.Parity = SetPortParity(_serialPort.Parity)
        _serialPort.DataBits = SetPortDataBits(_serialPort.DataBits)
        _serialPort.StopBits = SetPortStopBits(_serialPort.StopBits)
        _serialPort.Handshake = SetPortHandshake(_serialPort.Handshake)

        ' Set the read/write timeouts
        _serialPort.ReadTimeout = 500
        _serialPort.WriteTimeout = 500

        _serialPort.Open()
        _continue = True
        readThread.Start()

        Console.Write("Name: ")
        name = Console.ReadLine()

        Console.WriteLine("Type QUIT to exit")

        While _continue
            message = Console.ReadLine()

            If stringComparer__1.Equals("quit", message) Then
                _continue = False
            Else
                _serialPort.WriteLine([String].Format("<{0}>: {1}", name, message))
            End If
        End While

        readThread.Join()
        _serialPort.Close()
    End Sub

    Public Shared Sub Read()
        While _continue
            Try
                Dim message As String = _serialPort.ReadLine()
                Console.WriteLine(message)
            Catch generatedExceptionName As TimeoutException
            End Try
        End While
    End Sub

    ' Display Port values and prompt user to enter a port.
    Public Shared Function SetPortName(defaultPortName As String) As String
        Dim portName As String

        Console.WriteLine("Available Ports:")
        For Each s As String In SerialPort.GetPortNames()
            Console.WriteLine("   {0}", s)
        Next

        Console.Write("Enter COM port value (Default: {0}): ", defaultPortName)
        portName = Console.ReadLine()

        If portName = "" OrElse Not (portName.ToLower()).StartsWith("com") Then
            portName = defaultPortName
        End If
        Return portName
    End Function
    ' Display BaudRate values and prompt user to enter a value.
    Public Shared Function SetPortBaudRate(defaultPortBaudRate As Integer) As Integer
        Dim baudRate As String

        Console.Write("Baud Rate(default:{0}): ", defaultPortBaudRate)
        baudRate = Console.ReadLine()

        If baudRate = "" Then
            baudRate = defaultPortBaudRate.ToString()
        End If

        Return Integer.Parse(baudRate)
    End Function

    ' Display PortParity values and prompt user to enter a value.
    Public Shared Function SetPortParity(defaultPortParity As Parity) As Parity
        Dim parity As String

        Console.WriteLine("Available Parity options:")
        For Each s As String In [Enum].GetNames(GetType(Parity))
            Console.WriteLine("   {0}", s)
        Next

        Console.Write("Enter Parity value (Default: {0}):", defaultPortParity.ToString(), True)
        parity = Console.ReadLine()

        If parity = "" Then
            parity = defaultPortParity.ToString()
        End If

        Return CType([Enum].Parse(GetType(Parity), parity, True), Parity)
    End Function
    ' Display DataBits values and prompt user to enter a value.
    Public Shared Function SetPortDataBits(defaultPortDataBits As Integer) As Integer
        Dim dataBits As String

        Console.Write("Enter DataBits value (Default: {0}): ", defaultPortDataBits)
        dataBits = Console.ReadLine()

        If dataBits = "" Then
            dataBits = defaultPortDataBits.ToString()
        End If

        Return Integer.Parse(dataBits.ToUpperInvariant())
    End Function
    ' Display StopBits values and prompt user to enter a value.

    Public Shared Function SetPortStopBits(defaultPortStopBits As StopBits) As StopBits
        Dim stopBits As String

        Console.WriteLine("Available StopBits options:")
        For Each s As String In [Enum].GetNames(GetType(StopBits))
            Console.WriteLine("   {0}", s)
        Next

        Console.Write("Enter StopBits value (None is not supported and " &
                      vbLf & "raises an ArgumentOutOfRangeException. " &
                      vbLf & " (Default: {0}):", defaultPortStopBits.ToString())
        stopBits = Console.ReadLine()

        If stopBits = "" Then
            stopBits = defaultPortStopBits.ToString()
        End If

        Return CType([Enum].Parse(GetType(StopBits), stopBits, True), StopBits)
    End Function
    Public Shared Function SetPortHandshake(defaultPortHandshake As Handshake) As Handshake
        Dim handshake As String

        Console.WriteLine("Available Handshake options:")
        For Each s As String In [Enum].GetNames(GetType(Handshake))
            Console.WriteLine("   {0}", s)
        Next

        Console.Write("Enter Handshake value (Default: {0}):", defaultPortHandshake.ToString())
        handshake = Console.ReadLine()

        If handshake = "" Then
            handshake = defaultPortHandshake.ToString()
        End If

        Return CType([Enum].Parse(GetType(Handshake), handshake, True), Handshake)
    End Function
End Class

Commenti

Usare questa classe per controllare una risorsa file di porta seriale.Use this class to control a serial port file resource. Questa classe fornisce l'I/O sincrono e basato su eventi, l'accesso agli Stati di blocco e di interruzioni e l'accesso alle proprietà del driver seriale.This class provides synchronous and event-driven I/O, access to pin and break states, and access to serial driver properties. Inoltre, la funzionalità di questa classe può essere racchiusa in un Stream oggetto interno, accessibile tramite BaseStream la proprietà e passata a classi che racchiudono o utilizzano i flussi.Additionally, the functionality of this class can be wrapped in an internal Stream object, accessible through the BaseStream property, and passed to classes that wrap or use streams.

La SerialPort classe supporta le codifiche seguenti: ASCIIEncoding, UTF8Encoding, UnicodeEncoding, UTF32Encodinge qualsiasi codifica definita in mscorlib. dll dove la tabella codici è inferiore a 50000 o la tabella codici è 54936.The SerialPort class supports the following encodings: ASCIIEncoding, UTF8Encoding, UnicodeEncoding, UTF32Encoding, and any encoding defined in mscorlib.dll where the code page is less than 50000 or the code page is 54936. È possibile usare codifiche alternative, ma è necessario usare il ReadByte metodo o Write ed eseguire la codifica manualmente.You can use alternate encodings, but you must use the ReadByte or Write method and perform the encoding yourself.

Usare il GetPortNames metodo per recuperare le porte valide per il computer corrente.You use the GetPortNames method to retrieve the valid ports for the current computer.

Se un SerialPort oggetto viene bloccato durante un'operazione di lettura, non interrompere il thread.If a SerialPort object becomes blocked during a read operation, do not abort the thread. Al contrario, chiudere il flusso di base o eliminare l' SerialPort oggetto.Instead, either close the base stream or dispose of the SerialPort object.

Costruttori

SerialPort() SerialPort() SerialPort() SerialPort()

Inizializza una nuova istanza della classe SerialPort.Initializes a new instance of the SerialPort class.

SerialPort(IContainer) SerialPort(IContainer) SerialPort(IContainer) SerialPort(IContainer)

Inizializza una nuova istanza della classe SerialPort usando l'oggetto IContainer specificato.Initializes a new instance of the SerialPort class using the specified IContainer object.

SerialPort(String) SerialPort(String) SerialPort(String) SerialPort(String)

Inizializza una nuova istanza della classe SerialPort usando il nome della porta specificato.Initializes a new instance of the SerialPort class using the specified port name.

SerialPort(String, Int32) SerialPort(String, Int32) SerialPort(String, Int32) SerialPort(String, Int32)

Inizializza una nuova istanza della classe SerialPort usando il nome della porta e la velocità in baud specificati.Initializes a new instance of the SerialPort class using the specified port name and baud rate.

SerialPort(String, Int32, Parity) SerialPort(String, Int32, Parity) SerialPort(String, Int32, Parity) SerialPort(String, Int32, Parity)

Inizializza una nuova istanza della classe SerialPort usando il nome della porta, la velocità in baud e il bit di parità specificati.Initializes a new instance of the SerialPort class using the specified port name, baud rate, and parity bit.

SerialPort(String, Int32, Parity, Int32) SerialPort(String, Int32, Parity, Int32) SerialPort(String, Int32, Parity, Int32) SerialPort(String, Int32, Parity, Int32)

Inizializza una nuova istanza della classe SerialPort usando il nome della porta, la velocità in baud, il bit di parità e i bit di dati specificati.Initializes a new instance of the SerialPort class using the specified port name, baud rate, parity bit, and data bits.

SerialPort(String, Int32, Parity, Int32, StopBits) SerialPort(String, Int32, Parity, Int32, StopBits) SerialPort(String, Int32, Parity, Int32, StopBits) SerialPort(String, Int32, Parity, Int32, StopBits)

Inizializza una nuova istanza della classe SerialPort usando il nome della porta, la velocità in baud, il bit di parità, i bit di dati e il bit di stop specificati.Initializes a new instance of the SerialPort class using the specified port name, baud rate, parity bit, data bits, and stop bit.

Campi

InfiniteTimeout InfiniteTimeout InfiniteTimeout InfiniteTimeout

Indica che non deve verificarsi alcun timeout.Indicates that no time-out should occur.

Proprietà

BaseStream BaseStream BaseStream BaseStream

Ottiene l'oggetto Stream sottostante per un oggetto SerialPort.Gets the underlying Stream object for a SerialPort object.

BaudRate BaudRate BaudRate BaudRate

Ottiene o imposta la velocità in baud della porta seriale.Gets or sets the serial baud rate.

BreakState BreakState BreakState BreakState

Ottiene o imposta lo stato del segnale di interruzione.Gets or sets the break signal state.

BytesToRead BytesToRead BytesToRead BytesToRead

Ottiene il numero di byte di dati nel buffer di ricezione.Gets the number of bytes of data in the receive buffer.

BytesToWrite BytesToWrite BytesToWrite BytesToWrite

Ottiene il numero di byte di dati nel buffer di invio.Gets the number of bytes of data in the send buffer.

CanRaiseEvents CanRaiseEvents CanRaiseEvents CanRaiseEvents

Ottiene un valore che indica se il componente può generare un evento.Gets a value indicating whether the component can raise an event.

(Inherited from Component)
CDHolding CDHolding CDHolding CDHolding

Ottiene lo stato della linea di rilevamento portante (CD, Carrier Detect).Gets the state of the Carrier Detect line for the port.

Container Container Container Container

Ottiene il IContainer che contiene il Component.Gets the IContainer that contains the Component.

(Inherited from Component)
CtsHolding CtsHolding CtsHolding CtsHolding

Ottiene lo stato della linea CTS (Clear-to-Send).Gets the state of the Clear-to-Send line.

DataBits DataBits DataBits DataBits

Ottiene o imposta la lunghezza standard dei bit di dati per byte.Gets or sets the standard length of data bits per byte.

DesignMode DesignMode DesignMode DesignMode

Ottiene un valore che indica se il Component si trova in modalità progettazione.Gets a value that indicates whether the Component is currently in design mode.

(Inherited from Component)
DiscardNull DiscardNull DiscardNull DiscardNull

Ottiene o imposta un valore che indica se i byte null vengono ignorati quando vengono trasmessi tra la porta e il buffer di ricezione.Gets or sets a value indicating whether null bytes are ignored when transmitted between the port and the receive buffer.

DsrHolding DsrHolding DsrHolding DsrHolding

Ottiene lo stato del segnale DSR (Data Set Ready).Gets the state of the Data Set Ready (DSR) signal.

DtrEnable DtrEnable DtrEnable DtrEnable

Ottiene o imposta un valore che abilita il segnale DTR (Data Terminal Ready) durante una comunicazione seriale.Gets or sets a value that enables the Data Terminal Ready (DTR) signal during serial communication.

Encoding Encoding Encoding Encoding

Ottiene o imposta la codifica dei byte per la conversione del testo prima e dopo la trasmissione.Gets or sets the byte encoding for pre- and post-transmission conversion of text.

Events Events Events Events

Ottiene l'elenco dei gestori eventi allegati a questo Component.Gets the list of event handlers that are attached to this Component.

(Inherited from Component)
Handshake Handshake Handshake Handshake

Ottiene o imposta il protocollo di sincronizzazione per la trasmissione dei dati tramite la porta seriale usando un valore di Handshake.Gets or sets the handshaking protocol for serial port transmission of data using a value from Handshake.

IsOpen IsOpen IsOpen IsOpen

Ottiene un valore che indica lo stato aperto o chiuso dell'oggetto SerialPort.Gets a value indicating the open or closed status of the SerialPort object.

NewLine NewLine NewLine NewLine

Ottiene o imposta il valore usato per interpretare la fine di una chiamata ai metodi ReadLine() e WriteLine(String).Gets or sets the value used to interpret the end of a call to the ReadLine() and WriteLine(String) methods.

Parity Parity Parity Parity

Ottiene o imposta il protocollo di controllo della parità.Gets or sets the parity-checking protocol.

ParityReplace ParityReplace ParityReplace ParityReplace

Ottiene o imposta il byte che sostituisce i byte non validi in un flusso di dati quando si verifica un errore di parità.Gets or sets the byte that replaces invalid bytes in a data stream when a parity error occurs.

PortName PortName PortName PortName

Ottiene o imposta la porta per le comunicazioni, incluse, ma non solo, tutte le porte COM disponibili.Gets or sets the port for communications, including but not limited to all available COM ports.

ReadBufferSize ReadBufferSize ReadBufferSize ReadBufferSize

Ottiene o imposta la dimensione del buffer di input SerialPort.Gets or sets the size of the SerialPort input buffer.

ReadTimeout ReadTimeout ReadTimeout ReadTimeout

Ottiene o imposta il numero di millisecondi prima del timeout quando un'operazione di lettura non viene completata.Gets or sets the number of milliseconds before a time-out occurs when a read operation does not finish.

ReceivedBytesThreshold ReceivedBytesThreshold ReceivedBytesThreshold ReceivedBytesThreshold

Ottiene o imposta il numero di byte nel buffer di input interno prima che si verifichi un evento DataReceived.Gets or sets the number of bytes in the internal input buffer before a DataReceived event occurs.

RtsEnable RtsEnable RtsEnable RtsEnable

Ottiene o imposta un valore che indica se il segnale RTS (Request to Send) è abilitato durante la comunicazione seriale.Gets or sets a value indicating whether the Request to Send (RTS) signal is enabled during serial communication.

Site Site Site Site

Ottiene o imposta l'oggetto ISite di Component.Gets or sets the ISite of the Component.

(Inherited from Component)
StopBits StopBits StopBits StopBits

Ottiene o imposta il numero standard dei bit di stop per byte.Gets or sets the standard number of stopbits per byte.

WriteBufferSize WriteBufferSize WriteBufferSize WriteBufferSize

Ottiene o imposta la dimensione del buffer di output della porta seriale.Gets or sets the size of the serial port output buffer.

WriteTimeout WriteTimeout WriteTimeout WriteTimeout

Ottiene o imposta il numero di millisecondi prima del timeout quando un'operazione di scrittura non viene completata.Gets or sets the number of milliseconds before a time-out occurs when a write operation does not finish.

Metodi

Close() Close() Close() Close()

Chiude la connessione alla porta, imposta la proprietà IsOpen su false ed elimina l'oggetto interno Stream.Closes the port connection, sets the IsOpen property to false, and disposes of the internal Stream object.

CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type)

Consente di creare un oggetto che contiene tutte le informazioni rilevanti necessarie per la generazione del proxy utilizzato per effettuare la comunicazione con un oggetto remoto.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
DiscardInBuffer() DiscardInBuffer() DiscardInBuffer() DiscardInBuffer()

Elimina i dati dal buffer di ricezione del driver seriale.Discards data from the serial driver's receive buffer.

DiscardOutBuffer() DiscardOutBuffer() DiscardOutBuffer() DiscardOutBuffer()

Elimina i dati dal buffer di trasmissione del driver seriale.Discards data from the serial driver's transmit buffer.

Dispose() Dispose() Dispose() Dispose()

Rilascia tutte le risorse usate da Component.Releases all resources used by the Component.

(Inherited from Component)
Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Rilascia le risorse non gestite usate da SerialPort e, facoltativamente, le risorse gestite.Releases the unmanaged resources used by the SerialPort and optionally releases the managed resources.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Funge da funzione hash predefinita.Serves as the default hash function.

(Inherited from Object)
GetLifetimeService() GetLifetimeService() GetLifetimeService() GetLifetimeService()

Consente di recuperare l'oggetto servizio di durata corrente per controllare i criteri di durata per l'istanza.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetPortNames() GetPortNames() GetPortNames() GetPortNames()

Ottiene una matrice di nomi di porta seriale per il computer corrente.Gets an array of serial port names for the current computer.

GetService(Type) GetService(Type) GetService(Type) GetService(Type)

Consente di restituire un oggetto che rappresenta un servizio fornito da Component o dal relativo Container.Returns an object that represents a service provided by the Component or by its Container.

(Inherited from Component)
GetType() GetType() GetType() GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Inherited from Object)
InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService()

Ottiene un oggetto servizio di durata per controllare i criteri di durata per questa istanza.Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean)

Crea una copia dei riferimenti dell'oggetto MarshalByRefObject corrente.Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
Open() Open() Open() Open()

Apre una nuova connessione su porta seriale.Opens a new serial port connection.

Read(Byte[], Int32, Int32) Read(Byte[], Int32, Int32) Read(Byte[], Int32, Int32) Read(Byte[], Int32, Int32)

Legge un numero di byte dal buffer di input SerialPort e li scrive in una matrice di byte con l'offset specificato.Reads a number of bytes from the SerialPort input buffer and writes those bytes into a byte array at the specified offset.

Read(Char[], Int32, Int32) Read(Char[], Int32, Int32) Read(Char[], Int32, Int32) Read(Char[], Int32, Int32)

Legge un numero di caratteri dal buffer di input SerialPort e li scrive in una matrice di caratteri in corrispondenza di un offset specificato.Reads a number of characters from the SerialPort input buffer and writes them into an array of characters at a given offset.

ReadByte() ReadByte() ReadByte() ReadByte()

Legge in modo sincrono un byte dal buffer di input SerialPort.Synchronously reads one byte from the SerialPort input buffer.

ReadChar() ReadChar() ReadChar() ReadChar()

Legge in modo sincrono un carattere dal buffer di input SerialPort.Synchronously reads one character from the SerialPort input buffer.

ReadExisting() ReadExisting() ReadExisting() ReadExisting()

Legge tutti i byte disponibili immediatamente, in base alla codifica, sia nel flusso che nel buffer di input dell'oggetto SerialPort.Reads all immediately available bytes, based on the encoding, in both the stream and the input buffer of the SerialPort object.

ReadLine() ReadLine() ReadLine() ReadLine()

Legge fino al valore di NewLine nel buffer di input.Reads up to the NewLine value in the input buffer.

ReadTo(String) ReadTo(String) ReadTo(String) ReadTo(String)

Legge una stringa fino al parametro value specificato nel buffer di input.Reads a string up to the specified value in the input buffer.

ToString() ToString() ToString() ToString()

Restituisce un oggetto String che contiene il nome dell'eventuale oggetto Component.Returns a String containing the name of the Component, if any. Questo metodo non deve essere sottoposto a override.This method should not be overridden.

(Inherited from Component)
Write(Byte[], Int32, Int32) Write(Byte[], Int32, Int32) Write(Byte[], Int32, Int32) Write(Byte[], Int32, Int32)

Scrive sulla porta un numero specificato di byte sulla porta seriale usando i dati di un buffer.Writes a specified number of bytes to the serial port using data from a buffer.

Write(Char[], Int32, Int32) Write(Char[], Int32, Int32) Write(Char[], Int32, Int32) Write(Char[], Int32, Int32)

Scrive sulla porta seriale un numero specificato di caratteri usando i dati di un buffer.Writes a specified number of characters to the serial port using data from a buffer.

Write(String) Write(String) Write(String) Write(String)

Scrive sulla porta seriale la stringa specificata.Writes the specified string to the serial port.

WriteLine(String) WriteLine(String) WriteLine(String) WriteLine(String)

Scrive la stringa specificata e il valore di NewLine nel buffer di output.Writes the specified string and the NewLine value to the output buffer.

Eventi

DataReceived DataReceived DataReceived DataReceived

Indica che i dati sono stati ricevuti tramite una porta rappresentata dall'oggetto SerialPort.Indicates that data has been received through a port represented by the SerialPort object.

Disposed Disposed Disposed Disposed

Si verifica quando il componente viene eliminato da una chiamata al metodo Dispose().Occurs when the component is disposed by a call to the Dispose() method.

(Inherited from Component)
ErrorReceived ErrorReceived ErrorReceived ErrorReceived

Indica che si è verificato un errore con una porta rappresentata dall'oggetto SerialPort.Indicates that an error has occurred with a port represented by a SerialPort object.

PinChanged PinChanged PinChanged PinChanged

Indica che si è verificato un evento segnale non di dati sulla porta rappresentata dall'oggetto SerialPort.Indicates that a non-data signal event has occurred on the port represented by the SerialPort object.

Sicurezza

SecurityPermission
per la possibilità di chiamare codice non gestito.for the ability to call unmanaged code. Enumerazione associata:UnmanagedCodeAssociated enumeration: UnmanagedCode

Si applica a