|
Politica de confidentialitate |
|
• domnisoara hus • legume • istoria unui galban • metanol • recapitulare • profitul • caract • comentariu liric • radiolocatia • praslea cel voinic si merele da aur | |
SERVICII DE COMUNICATIE PRIN MESAJE | ||||||
|
||||||
j9j24jb Serviciile de comunicatie prin mesaje permit programelor de aplicatie: a) sa emita mesaje de 1 pina la 55 de octeti vederea difuzarii la mai multe destinatii; b) sa stabileasca unul sau mai multe canale de mesaje cu anumite statii de lucru, legate la acelasi file server. Un astfel de canal ofera posibilitatea transmiterii de mesaje de 1 pina la 126 de octeti. Difuzarea de mesaje si comunicatia prin canale consuma timp calculator pe server. Pentru o adevarata comunicatie de la egal la egal intre statiile de lucru, programele de aplicatie pot folosi functiile IPX (Internetwork Packet Exchange) sau SPX Pentru serviciul de difuzare a mesajelor, fiecare coonexiune a unui file server are asociat un buffer de 55 de octeti; pentru serviciul de comunicatie prin canale, serverul mentine pentru fiecare conexiune o coada de mesaje (capacitatea maxima a cozii este de 6 mesaje). In mod normal, odata ce o conexiune trimite un mesaj spre difu zare catre o alta conexiune, acesta este depus in bufferul de mesaje difuzate sau in coada de mesaje primite ale conexiunii destinatare, de unde este preluat de supervizor (shell) si afisat pe linia cea mai de jos (a 25-a linie) a ecranului. Fiecare conexiune are un mod de tratare a mesajelor (un numar intre 0 si 3, care poate fi modificat prin program), care preci zeaza daca bufferul destinat mesajelor difuzate este deschis sau nu, si daca supervizorul are sau nu voie sa preia automat mesa jele difuzate. Functiile de comunicare prin mesaje sint folosite de programele utilitare SEND, CASTON si CASTOFF, care se folosesc pentru a emite mesaje in vederea difuzarii, a permite sau a interzice receptionarea mesajelor difuzate. Mesajele transmise cu ajutorul acestor functii pot fi inregistrate intr-un fisier jurnal spe cial, accesibil administratorului retelei. Fisiere antet necesare: nit.h niterror.h BroadcastToConsoleIIIIIIIIIIIIIIIIII Trimite un mesaj care va fi afisat la consola serverului implicit. Mesajele afisate la consola sterg mesajele precedente. Parametri: char * message sir de caractere continind mesajul de trimis. Rezultat: int SUCCESSFULL IIIIIIIIIIIIIII Determina starea uneia sau a mai multor canale de mesaje. Parametri: WORD * connectionList tablou continind numerele de conexiune ale statiilor la care este legat fiecare dintre canalele asupra carora se face interogarea. Rezultat: int SUCCESSFUL CloseMessagePipeIIIIIIIIIIIIIIII Inchide unul sau mai multe canale de mesaje. Parametri: WORD * connectionList tablou continind numerele de conexiune ale statiilor la care este legat fiecare dintre canalele care trebuie inchise. Rezultat: int SUCCESSFULL IIIIIIIIIIIIIIIIIII Preia un mesaj transmis prin difuzare. Apelarea acestei functii are sens numai daca modul de tratare a mesajelor difuzate este 2 sau 3. Parametri: char * messageBuffer va receptiona mesajul (cel mult 56 de caractere, inclusiv NULul terminator). Daca nici un mesaj nu este disponibil, atunci messageBuffer a0i va lua valoare '\0' Rezultat: int SUCCESSFULL IIIIIIIIIIIIIIII Permite aflarea modului curent de tratare a mesajelor difuzate. Un mesaj din partea serverului poate elimina din buffer un mesaj din partea unei statii de lucru. Rezultat: BYTE 0 --> mesajele sint admise atit din partea altor statii de lucru cit si din partea serverului. Supervizorul statiei preia automat si afiseaza fiecare mesaj. IIIIIIIIIIIIIIIIII Preia un mesaj din coada de mesaje asociata statiei de lucru. Parametri: char * messageBuffer primeste ca valoare un sir de caractere reprezentind cel mai vechi mesaj din coada Rezultat: int SUCCESSFUL IIIIIIIIIIIIIIIII Depune un mesaj in fisierul NET$LOG.MSG al serverului implicit. Intrarea in fisier va avea urmatorul format: luna/zi/an ore:minute STN numar_statie: mesaj Functia poate fi utilizata de utilitare sau de programe de aplicatie care au nevoie sa intregistreze informatii, de exemplu cu scopul de a le folosi pentru contabilitate. Parametri: char * message sir de caractere imprimabile continind mesajul de inregistrat (cel mult 80 de caractere, inclusiv NULul terminator). Rezultat: int SUCCESSFUL. OpenMessagePipeIIIIIIIIIIIIIII Creaza o jumatate de canal de comunicatie intre statia de lucru si una sau mai multe conexiuni; cealalta jumatate a canalului (canalelor) trebuie create de conexiune (conexiunile) destina tara, cu ajutorul aceleiasi functii. Parametri: WORD * connectionList un tablou continind numerele conexiuni lor la care trebuie conectata statia de lucru. Pentru fiecare element din acest tablou se afla un element coorespunzator in tabloul resultList. Rezultat: int SUCCESSFUL SendBroadcastMessage Parametri: char * message mesaj de difuzat (cel mult 56 de caractere, inclusiv terminatorul NUL). Rezultat: int SUCCESSFUL IIIIIIIIIIIIIIIIIII Trimite un mesaj catre una sau mai multe conexiuni cu care statia de lucru a deschis canale de mesaje. Parametri: char * message mesaj de trimis (cel mult 127 de caractere, inclusiv terminatorul NUL). Rezultat: int SUCCESSFUL IIIIIIIIIIIIIIII Stabileste modul in care sint tratate mesajele difuzate destinate acestei statii de lucru. Parametri: BYTE broadcastMode o valoare intre 0 si 3 specificind modul de tratare a mesajelor difuzate. Modul implicit este zero. Pentru semnificatia valorilor vezi functia GetBroadcastMode. |
||||||
|
||||||
|
||||||
Copyright© 2005 - 2024 | Trimite document | Harta site | Adauga in favorite |
|