Définition...
Opérateurs...
Exemple...
Traduction...
/***************************************************************/
Type CanalMicrosoftNetwork Implemente Public : ICanal Defaut Final
/* Objet : ICanal Msn pour communiquer entre deux taches. */
/***************************************************************/
Public :
/*-------------------------------------------------------------*/
/* Heritage des methodes de IFlux. */
/*-------------------------------------------------------------*/
Constructeur();
Procedure Lire(B : Booleen Sortie);
Fonction Lire(B : Binaire Sortie, Nombre : Nul Ou Entier) Retourner Nul Ou Entier;
Fonction Lire(C : Caractere Sortie, Nombre : Nul Ou Entier) Retourner Nul Ou Entier;
Procedure Lire(E : Entier Sortie);
Procedure Lire(R : Reel Sortie);
Fonction LireUneLigne(C: Caractere Sortie, Nombre : Nul Ou Entier) Retourner Nul Ou Entier;
Fonction LireUnMot(C : Caractere Sortie, Nombre : Nul Ou Entier) Retourner Nul Ou Entier;
Procedure Ecrire(B : Nul Ou Booleen);
Procedure Ecrire(C : Nul Ou Binaire);
Procedure Ecrire(C : Nul Ou Caractere);
Procedure Ecrire(E : Nul Ou Entier);
Procedure Ecrire(R : Nul Ou Reel);
Procedure Fermer();
Fonction Optimiser(Invariant) LirePageDeCode() Retourner PagesDeCodesSupportees;
Procedure ChangerPageDeCode(P : PagesDeCodesSupportees);
/*-------------------------------------------------------------*/
/* Heritage des methodes de ICanal. */
/*-------------------------------------------------------------*/
Fonction Optimiser(Invariant) Protocole() Retourner Caractere;
Fonction Optimiser(Invariant) Adresse(ProtocoleDuClient : Booleen) Retourner Caractere;
/*-------------------------------------------------------------*/
/* Methodes propres. */
/*-------------------------------------------------------------*/
Constructeur(NomDuCanal : Caractere, NomDuTuyau : Caractere, TailleBufferIO : Entier=-1);
Procedure ServirDesClients();
Procedure AccepterUnClient();
Fonction TenterDAccepterUnClient() Retourner Booleen;
Procedure ConnecterAUnServeur(NomDuServeur : Caractere, NomDuTuyau : Caractere);
Fin Type
Le type CanalMicrosoftNetwork possède un constructeur explicite. Le paramètre NomDuCanal est le nom du canal. Le paramètre NomDuTuyau est le nom du pseudo-fichier servant de communication. Le paramètre TailleBufferIO permet de spécifier la taille du cache en octets pour faire des accès par bloc. Par défaut, sa valeur est de 1024 octets. Une taille de zéro signifie de faire des lectures/écritures directement sur le réseau.
Si une erreur survient lors de la création du canal, l'exception CreationCanalImpossible est envoyée.
Source Composant "Exemple de serveur" Version 1.0.0;
Variable
C : Nul Ou CanalMicrosoftNetwork;
/* ICanal du serveur. */
L : Caractere;
Principal
Debut
C=CanalMicrosoftNetwork("Serveur", "essai");
C=ServirDesClients();
TantQue Vrai Faire
Si C.TenterDAccepterUnClient() Alors
/* Il y a un nouveau client. */
?=C.LireUneLigne(L,256);
C.Ecrire(L.Majuscule());
C.Fermer();
Fin Si
Attendre(10);
Fin TantQue
Fin Principal
Source Composant "Exemple de client" Version 1.0.0;
Variable
C : Nul Ou CanalMicrosoftNetwork;
/* ICanal du client. */
L : Caractere;
Principal
Debut
C=ICanal("Client");
/* On établit une session avec le serveur. */
C.ConnecterAUnServeur("andromede", "essai");
C.Ecrire("bonjour le monde");
/* On attend la réponse. */
?=C.LireUneLigne(L, 256):
C.Fermer();
/* On écrit la réponse. */
Ecran.Ecrire(L);
Fin Principal
MicrosoftNetworkMittel | MicrosoftNetworkMedium | 微软网络媒介 | MedioRedMicrosoft | - | - | - | - |