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) i
(word) dans l'index. Présent dans l'unité System. s := ParamStr(i) ; Program exemple23 ;
Uses dos ;
Var i : word ;
f : text ;
s : string ;
Procedure acces ;
Begin
WriteLn(' Ok') ;
...
') ;
Reset(f) ;
ReadLn(f,s) ;
If ParamStr(1) = s Then acces
Else WriteLn('Acces denied.') ;
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.