FileShare Enum

Definition

Contains constants for controlling the kind of access other operations can have to the same file.

This enumeration supports a bitwise combination of its member values.

public enum class FileShare
[System.Flags]
public enum FileShare
[System.Flags]
[System.Serializable]
public enum FileShare
[System.Flags]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum FileShare
[<System.Flags>]
type FileShare = 
[<System.Flags>]
[<System.Serializable>]
type FileShare = 
[<System.Flags>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type FileShare = 
Public Enum FileShare
Inheritance
FileShare
Attributes

Fields

Delete 4

Allows subsequent deleting of a file.

Inheritable 16

Makes the file handle inheritable by child processes. This is not directly supported by Win32.

None 0

Declines sharing of the current file. Any request to open the file (by this process or another process) will fail until the file is closed.

Read 1

Allows subsequent opening of the file for reading. If this flag is not specified, any request to open the file for reading (by this process or another process) will fail until the file is closed. However, even if this flag is specified, additional permissions might still be needed to access the file.

ReadWrite 3

Allows subsequent opening of the file for reading or writing. If this flag is not specified, any request to open the file for reading or writing (by this process or another process) will fail until the file is closed. However, even if this flag is specified, additional permissions might still be needed to access the file.

Write 2

Allows subsequent opening of the file for writing. If this flag is not specified, any request to open the file for writing (by this process or another process) will fail until the file is closed. However, even if this flag is specified, additional permissions might still be needed to access the file.

Examples

The following FileStream constructor opens an existing file and grants read-only access to other users (Read).

FileStream^ s2 = gcnew FileStream( name, FileMode::Open, FileAccess::Read, FileShare::Read );
FileStream s2 = new FileStream(name, FileMode.Open, FileAccess.Read, FileShare.Read);
Dim s2 As New FileStream(name, FileMode.Open, FileAccess.Read, FileShare.Read)

Remarks

For an example of creating a file and writing text to a file, see How to: Write Text to a File. For an example of reading text from a file, see How to: Read Text from a File. For an example of reading from and writing to a binary file, see How to: Read and Write to a Newly Created Data File.

A typical use of this enumeration is to define whether two processes can simultaneously read from the same file. For example, if a file is opened and Read is specified, other users can open the file for reading but not for writing.

A FileShare parameter is specified in some of the constructors for FileStream, IsolatedStorageFileStream, and in some of the Open methods of File and FileInfo to control how a file is opened.

Applies to

See also