Combinaison de paramètres de canal et de pas de canal

Lorsque vous combinez des types de canal et d’autres types dans un appel de procédure distante, les données sont transmises en fonction de la direction du paramètre :

  • Dans le [ ] sens, les données de tous les arguments non-pipe sont transmises en premier, suivies des données de canal.
  • Dans le [ ] sens inverse, le serveur envoie d’abord les données de canal. Une fois que la routine Manager a été retournée, le serveur transmet les données sans canal.
  • Lorsqu’il y a [ dans, ] les arguments de canal sortant combinés avec [ in, out ] arguments sans canal, d’abord les données d’entrée sont transmises dans son intégralité, comme décrit précédemment. Ensuite, les données de sortie sont transmises comme décrit précédemment.

La restriction suivante s’applique à cette implémentation (MIDL 3,0) de canaux : quand vous combinez des types de canal et d’autres types dans un appel de procédure distante unique, les paramètres non-pipe doivent avoir une taille bien définie pour permettre au compilateur MIDL de calculer la taille de la mémoire tampon nécessaire. Par exemple, vous ne pouvez pas combiner des paramètres de canal à l’aide d’un [ ] pointeur unique ou d’une structure conforme, car leur taille ne peut pas être déterminée au moment de la compilation.

canal

/Oi