FileSystem.Lock Method (Int32, Int64, Int64)

Controls access by other processes to all or part of a file opened by using the Open function. The My feature gives you better productivity and performance in file I/O operations than Lock and Unlock. For more information, see FileSystem.

Namespace:  Microsoft.VisualBasic
Assembly:  Microsoft.VisualBasic (in Microsoft.VisualBasic.dll)

public static void Lock(
	int FileNumber,
	long FromRecord,
	long ToRecord


Type: System.Int32

Required. Any valid file number.

Type: System.Int64

Optional. Number of the first record or byte to lock or unlock.

Type: System.Int64

Optional. Number of the last record or byte to lock or unlock.


FileNumber does not exist.


File mode is invalid.

The Lock and Unlock functions are used in environments where several processes might need access to the same file.

Lock and Unlock functions are always used in pairs. The arguments to Lock and Unlock must be identical.

If Record, or FromRecord and ToRecord are not supplied, the lock will be for the whole file. If Record alone is specified the single record will be locked/unlocked.

If the file has been opened for sequential input or output, Lock and Unlock affect the whole file, regardless of the range specified by FromRecord andToRecord.

This example illustrates the use of the Lock and Unlock functions. This example assumes that People.txt is a file that contains records of the structure Person.

Structure Person
    Dim Name As String 
    Dim ID As Integer 
End Structure 

Sub PutInLockedFile(ByVal onePerson As Person)
    FileOpen(1, "c:\people.txt", OpenMode.Binary)
    FilePut(1, onePerson)
End Sub

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
© 2015 Microsoft