MemoryMappedFile::CreateViewAccessor Method (Int64, Int64, MemoryMappedFileAccess)
Creates a MemoryMappedViewAccessor that maps to a view of the memory-mapped file, and that has the specified offset, size, and access restrictions.
Assembly: System.Core (in System.Core.dll)
public: [SecurityCriticalAttribute] [SecurityPermissionAttribute(SecurityAction::Demand, Flags = SecurityPermissionFlag::UnmanagedCode)] MemoryMappedViewAccessor^ CreateViewAccessor( long long offset, long long size, MemoryMappedFileAccess access )
Parameters
- offset
-
Type:
System::Int64
The byte at which to start the view.
- size
-
Type:
System::Int64
The size of the view. Specify 0 (zero) to create a view that starts at offset and ends approximately at the end of the memory-mapped file.
- access
-
Type:
System.IO.MemoryMappedFiles::MemoryMappedFileAccess
One of the enumeration values that specifies the type of access allowed to the memory-mapped file. The default is ReadWrite.
Return Value
Type: System.IO.MemoryMappedFiles::MemoryMappedViewAccessor^A randomly accessible block of memory.
| Exception | Condition |
|---|---|
| ArgumentOutOfRangeException | offset or size is a negative value. -or- size is greater than the logical address space. |
| UnauthorizedAccessException | access is invalid for the memory-mapped file. |
| IOException | An I/O error occurred. |
You can use the view returned by this method for random access to a memory-mapped file.
To create a complete view of the memory-mapped file, specify 0 (zero) for the size parameter. If you do this, the size of the view might be smaller or larger than the size of the source file on disk. This is because views are provided in units of system pages, and the size of the view is rounded up to the next system page size.
for access to unmanaged code. Associated enumeration: SecurityPermissionFlag::UnmanagedCode.
Available since 4.0