@
.
Les fichiers sources sont dans le répertoire ${UPS_HOME}/upsnet/demo/${UPS_LANGUAGE}/accesdis/.
Pour analyser le fichier source, UpsNet.upi doit être déclaré parmi les modules importés dans le fichier ${UPS_HOME}/ini/${UPS_USER}/upsp5l.ini.
upsorb PortUpsOrb=1632
serveur PortUpsOrb=1632 PortServeur=1640 NbServeurs=1
client PortUpsOrb=1632 PortServeur=1650 NbServeurs=1
upsorb PortUpsOrb=1632
upssng Source=serveur.upl PortUpsOrb=1632 PortServeur=1640 NbServeurs=1
upssng Source=client.upl PortUpsOrb=1632 PortServeur=1650 NbServeurs=1
Source Composant "Exemple d'emploi de l'accès distant" Version 4.0.0;
Principal
/*******/
Debut
TantQue Vrai Faire
Attendre(1.0);
Fin TantQue
Fin Principal
Source Composant "Exemple d'emploi de l'accès distant" Version 4.0.0;
Variable
/******/
F : Fichier;
C : Caractere;
E : Entier;
R : Reel;
B : Booleen;
P : Entier;
MonServeur : Nul Ou Serveur;
S : Nul Ou Synchronisation;
T : Nul Ou Tache;
L1 : Nul Ou ListeDe FichierListe;
FL : Nul Ou FichierListe;
Principal
/*******/
Debut
MonServeur=Serveur("UpsKrn", 1, 0, 0, "serveur");
F=Fichier@MonServeur("/tmp/essai.txt", EcritureTexte);
F.Ecrire("Bonjour\nAu revoir\nEt a bientot\n");
F.Ecrire(1);
F.Ecrire("\n");
F.Ecrire(2.3);
F.Ecrire("\n");
F.Ecrire(Vrai);
F.Ecrire("\n");
F.Vider();
F.DeposerSurDisque();
F.Fermer();
F=Fichier@MonServeur("c:/tmp/essai.txt", LectureTexte);
E=F.LireUnMot(C, 20);
Ecran.Ecrire(C);
E=F.Lire(C, 4);
Ecran.Ecrire(C);
Ecran.Ecrire(E);
E=F.LireUneLigne(C);
Ecran.Ecrire(C);
Ecran.Ecrire(E);
P=F.LirePosition();
E=F.LireUneLigne(C);
Ecran.Ecrire(C);
Ecran.Ecrire(E);
F.Lire(E);
Ecran.Ecrire(E);
F.Lire(R);
Ecran.Ecrire(R);
F.Lire(B);
Ecran.Ecrire(B);
E=F.Lire(C, 4);
F.FixerPosition(P);
E=F.LireUneLigne(C);
Ecran.Ecrire(C);
Ecran.Ecrire(E);
Si F.FinDeFlux Alors
Ecran.Ecrire("Fin de fichier");
Fin Si
F.Fermer();
Ecran.Ecrire("\n");
F=Fichier("/tmp/essai.txt@serveur", EcritureTexte);
F.Ecrire("Bonjour\n");
F.Fermer();
S=Synchronisation@MonServeur("MaSynchronisation",
SynchronisationPrivee);
S.Prendre(SynchronisationLecturePartagee);
Ecran.Ecrire("On se synchronise\n");
S.Lacher();
T=TachePrincipale@MonServeur;
T.ChangerPrioriteRelative(10);
Ecran.Ecrire(T.LirePrioriteRelative());
T.SuspendreTache();
T.ReprendreTache();
Ecran.Ecrire(NomProgramme@MonServeur);
Ecran.Ecrire(EntrepotSysteme@MonServeur.TailleMemoireAllouee());
Ecran.Ecrire(EntrepotSysteme@MonServeur.TailleMemoireTotale());
Ecran.Ecrire(ServeurLocal.NomServeur);
Ecran.Ecrire(ServeurLocal@MonServeur.NomServeur);
F=Fichier("/tmp/essai.txt", EcritureTexte);
F.Ecrire("Bonjour\n");
F.Fermer();
CreerRepertoire("/tmp2@serveur");
CreerFichier("/tmp2/essai.txt@serveur");
CopierFichier("/tmp/essai.txt", "/tmp2/essai.txt@serveur");
CopierFichier("/tmp2/essai.txt@serveur", "/tmp/essai.txt");
CopierRepertoire("/tmp2@serveur", "/tmp3");
SupprimerFichier("/tmp2/essai.txt@serveur");
SupprimerRepertoire("/tmp2@serveur");
CopierRepertoire("/tmp3", "/tmp2@serveur");
SupprimerRepertoire("/tmp2@serveur");
RenommerRepertoire("/tmp3@serveur", "/tmp2@serveur");
ChangerDroitsDAcces("/tmp2/essai.txt@serveur", DroitLectureEcriture,
DroitLecture, DroitLecture);
Selon LireDroitsDAcces("/tmp2/essai.txt@serveur", ?, ?) Faire
Cas Dans (DroitLectureEcriture, DroitLectureEcritureExecution) Faire
Ecran.Ecrire("Lecture, Ecriture et Execution");
Fin Cas
Defaut
Ecran.Ecrire("Autres droits");
Fin Defaut
Fin Selon
Ecran.Ecrire(LireCaracteristiquesFichier("/tmp2/essai.txt@serveur"));
SupprimerRepertoire("/tmp2");
Ecran.Ecrire("\n");
L1=ListerFichiers("/@serveur", Nul);
Pour FL=L1.ParcoursAuDebut() JusquA L1.DernierElement() Faire
Ecran.Ecrire(FL.NomFichier);
Fin Pour
Ecran.Ecrire("\n");
?=Executer@MonServeur("notepad.exe", Faux, Faux, E);
Ecran.Ecrire(E);
Fin Principal