|
Lorsqu'on distribue un programme créé sur Turbo Pascal 7.0, il est de bon augure de pouvoir
passer des paramètres en ligne de commande lors du lancement sous MS-DOS, de pouvoir
rendre résident en mémoire le dit programme (Terminate Stay Resident).
Keep ( error ) ;
Procédure qui rend résident en mémoir le programme (TSR). Et renvoit sous la forme
d'une variable error de type word le code erreur de sortie.
Nécessite l'unité Dos.
Syntaxe :
Keep(0) ;
ParamCount
Fonction qui renvoit le nombre de paramètres passés en ligne de comande lors du lancement
du programme sous une valeur de type word. Présent dans l'unité System
(inutile à spécifier).
Syntaxe :
i := ParamCount ;
ParamStr(i)
Fonction qui renvoit la chaîne passée en commande selon sa place i
(word) dans l'index. Présent dans l'unité System.
Syntaxe :
s := ParamStr(i) ;
Program exemple23 ;
Uses dos ;
Var i : word ;
f : text ;
s : string ;
Procedure acces ;
Begin
WriteLn('Ok') ;
...
End ;
BEGIN
Assign(f,'password.dat') ;
Reset(f) ;
ReadLn(f,s) ;
If ParamStr(1) = s Then acces
Else WriteLn('Acces denied.') ;
END.
Ce programme exemple23 est protégé d'accès. C'est-à-dire que seul
un code passé en ligne de commande (et contenu dans un fichier) permet à l'utilisateur
de faire tourner le programme. On aurait put créer des procédures paramétrées
dont les paramètres soient ceux passés en ligne de commande, comme pour un compacteur
en mode MS-DOS, par exemple.
|