Lock, Unlock, instructions
Contrôle l’accès par d’autres processus à tout ou partie d’un fichier ouvert à l’aide de l’instruction Open .
Syntaxe
Lock [ # ] filenumber, [ recordrange ] . . . .Unlock [ # ] filenumber, [ recordrange ]
La syntaxe des instructions Lock et Unlock présente trois éléments :
Élément | Description |
---|---|
filenumber | Obligatoire. Tout numéro de fichier valide. |
recordrange | Optional. Plage d'enregistrements à verrouiller ou déverrouiller. |
Paramètres
Les paramètres de l’argument recordrange sont les suivants :
recnumber | [ start ] Pourterminer
Setting | Description |
---|---|
recnumber | Numéro d'enregistrement (fichiers en mode aléatoire) ou numéro d'octet (fichiers en mode binaire) auquel le verrouillage ou le déverrouillage commence. |
start | Numéro du premier enregistrement ou octet à verrouiller ou déverrouiller. |
end | Numéro du dernier enregistrement ou octet à verrouiller ou déverrouiller. |
Remarques
Les instructions Lock et Unlock sont utilisées dans des environnements dans lesquels plusieurs processus doivent pouvoir accéder au même fichier.
Les instructions Lock et Unlock sont toujours utilisées par paires. Les arguments des instructions Lock et Unlock doivent correspondre exactement.
Dans un fichier, le premier enregistrement ou octet se trouve à la position 1, le deuxième enregistrement ou octet se trouve à la position 2, etc. Si vous ne spécifiez qu'un enregistrement, seul ce dernier est verrouillé ou déverrouillé. Si vous spécifiez un seul enregistrement, seul cet enregistrement est verrouillé ou déverrouillé. Si vous utilisez l'instruction Lock sans recnumber, le fichier entier est verrouillé. L’utilisation de Lock sans recnumber verrouille l’intégralité du fichier ; L’utilisation de Unlock sans recnumber déverrouille l’intégralité du fichier.
Si le fichier a été ouvert pour une saisie ou sortie séquentielle, les instructions Lock et Unlock affectent le fichier entier, quelle que soit la plage spécifiée par start et end.
Importante
Veillez à supprimer tous les verrous avec une instruction Unlock avant de fermer un fichier ou de quitter votre programme. L’échec de la suppression des verrous produit des résultats imprévisibles.
Exemple
Cet exemple illustre l'utilisation des instructions Lock et Unlock. Pendant la modification d'un enregistrement, tout accès à ce dernier par d'autres processus est refusé. Cet exemple suppose que TESTFILE
est un fichier contenant cinq enregistrements du type Record
défini par l’utilisateur.
Type Record ' Define user-defined type.
ID As Integer
Name As String * 20
End Type
Dim MyRecord As Record, RecordNumber ' Declare variables.
' Open sample file for random access.
Open "TESTFILE" For Random Shared As #1 Len = Len(MyRecord)
RecordNumber = 4 ' Define record number.
Lock #1, RecordNumber ' Lock record.
Get #1, RecordNumber, MyRecord ' Read record.
MyRecord.ID = 234 ' Modify record.
MyRecord.Name = "John Smith"
Put #1, RecordNumber, MyRecord ' Write modified record.
Unlock #1, RecordNumber ' Unlock current record.
Close #1 ' Close file.
Voir aussi
Assistance et commentaires
Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.