Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Mise à jour : novembre 2007
Lit les paquets envoyés du DevicePacketStream sur l'ordinateur de bureau.
HRESULT Read([retval][out] IPacket **out_ppPacket)
Paramètres
- out_ppPacket
Les données sont lues dans le paquet.
Valeur de retour
Valeur HRESULT qui indique le résultat de l'appel de méthode.
E_INVALIDARG | Les arguments d'entrée ne sont pas valides (impossible d'écrire dans le paquet).
E_PENDING | la lecture n'a pas pu être effectuée dans le délai d'attente indiqué. Les utilisateurs peuvent réessayer avec une valeur de délai d'attente identique ou différente.
E_FAIL | pour tout autre échec.
Exemple
Dans cet exemple, le flux de données de paquet lit les données de l'objet RemoteAgent sur l'ordinateur lors de la connexion. Pour accéder à l'intégralité de l'exemple, consultez la rubrique IDeviceAgentTransport.
// Check for a packet while communication stream is connected.
f2(&pPacket);
VARIANT_BOOL connected;
pStream->IsConnected(&connected);
while(connected)
{
pStream->IsConnected(&connected);
VARIANT_BOOL available;
// If a packet is found, display the string.
pStream->IsPacketAvailable(&available);
if(available)
{
pStream->Read(&pPacket);
VARIANT_BOOL endofpacket;
pPacket->IsEndOfPacket(&endofpacket);
while (!endofpacket)
{
pPacket->IsEndOfPacket(&endofpacket);
DataTypeEnum datatype;
pPacket->ReadDataType(&datatype);
switch (datatype)
{
case DT_BYTE:
BYTE byteValue;
pPacket->ReadByte(&byteValue);
break;
case DT_INT32:
INT32 intValue;
pPacket->ReadInt32(&intValue);
break;
case DT_WIDECHAR:
wchar_t charValue;
pPacket->ReadChar(&charValue);
break;
case DT_BOOL:
VARIANT_BOOL boolValue;
pPacket->ReadBool(&boolValue);
break;
case DT_BYTEARRAY:
BYTE * buffer[100];
ULONG length;
pPacket->ReadBytes(buffer,&length);
break;
case DT_STRING:
LPWSTR string;
pPacket->ReadString(&string);
MessageBox(NULL, string,string,0);
break;
default:
break;
}
};
}
};
Équivalent managé
Configuration requise
DeviceAgentTransport.h