Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Reads data from the device and returns a packet object.
Namespace: Microsoft.SmartDevice.Connectivity
Assembly: Microsoft.SmartDevice.Connectivity (in Microsoft.SmartDevice.Connectivity.dll)
Syntax
'Declaration
Public Function Read As Packet
'Usage
Dim instance As DevicePacketStream
Dim returnValue As Packet
returnValue = instance.Read()
public Packet Read()
public:
Packet^ Read()
public function Read() : Packet
Return Value
Type: Microsoft.SmartDevice.Connectivity.Packet
Packet object that contains data transferred over the device packet stream.
Exceptions
Exception | Condition |
---|---|
IOException | Occurs if an exception occurs when reading a packet. or if data that arrived on the stream is not a valid packet object. |
SerializationException | The packet was corrupted during transmission over the network. |
Remarks
If data arrived on the read stream is not a valid packet, this method throws an exception.
This method should be called after IsPacketAvailable returns True. A packet is available when a connected device agent writes a packet to the stream by calling Write.
Examples
' While stream is connected, try to read a packet.
While ps.IsConnected()
If ps.IsPacketAvailable() Then
packet = ps.Read()
While Not packet.IsEndOfPacket()
Select Case packet.ReadDataType()
Case DataType.BoolType
Dim boolValue As Boolean = packet.ReadBool()
Case DataType.ByteArrayType
Dim buffer As Byte() = packet.ReadBytes()
Case DataType.ByteType
Dim byteValue As Byte = packet.ReadByte()
Case DataType.CharType
Dim charValue As Char = packet.ReadChar()
Case DataType.Int32Type
Console.WriteLine("Int32Type: " + packet.ReadInt32().ToString())
Case DataType.StringType
Console.WriteLine("String: " + packet.ReadString())
Case Else
End Select
End While
Exit While
End If
System.Threading.Thread.Sleep(1000)
End While
ps.Close()
device.Disconnect()
// While stream is connected, try to read a packet.
while (ps.IsConnected())
{
if (ps.IsPacketAvailable())
{
packet = ps.Read();
while (!packet.IsEndOfPacket())
{
switch (packet.ReadDataType())
{
case DataType.BoolType:
bool boolValue = packet.ReadBool();
break;
case DataType.ByteArrayType:
byte[] buffer = packet.ReadBytes();
break;
case DataType.ByteType:
byte byteValue = packet.ReadByte();
break;
case DataType.CharType:
char charValue = packet.ReadChar();
break;
case DataType.Int32Type:
Console.WriteLine("Int32Type: " + packet.ReadInt32().ToString());
break;
case DataType.StringType:
Console.WriteLine("String: " + packet.ReadString());
break;
default:
break;
}
}
break;
}
System.Threading.Thread.Sleep(1000);
}
ps.Close();
device.Disconnect();
.NET Framework Security
- Full trust for the immediate caller. This member cannot be used by partially trusted code. For more information, see Using Libraries from Partially Trusted Code.