MemoryMappedFile.CreateFromFile Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Var olan bir dosyadan belleğe eşlenmiş bir dosya oluşturur.
Aşırı Yüklemeler
| Name | Description |
|---|---|
| CreateFromFile(String) |
Disk üzerindeki bir dosyadan belleğe eşlenmiş bir dosya oluşturur. |
| CreateFromFile(String, FileMode) |
Disk üzerindeki bir dosyadan belirtilen erişim moduna sahip belleğe eşlenmiş bir dosya oluşturur. |
| CreateFromFile(String, FileMode, String) |
Disk üzerindeki bir dosyadan belirtilen erişim moduna ve ada sahip, belleğe eşlenmiş bir dosya oluşturur. |
| CreateFromFile(String, FileMode, String, Int64) |
Disk üzerindeki bir dosyadan belirtilen erişim moduna, ada ve kapasiteye sahip belleğe eşlenmiş bir dosya oluşturur. |
| CreateFromFile(String, FileMode, String, Int64, MemoryMappedFileAccess) |
Disk üzerindeki bir dosyadan belirtilen erişim moduna, ada, kapasiteye ve erişim türüne sahip belleğe eşlenmiş bir dosya oluşturur. |
| CreateFromFile(SafeFileHandle, String, Int64, MemoryMappedFileAccess, HandleInheritability, Boolean) |
ve belirtilen erişim modunu, adı, devralınabilirliği ve kapasiteyi kullanarak mevcut bir dosyadan belleğe eşlenmiş bir SafeFileHandle dosya oluşturur. |
| CreateFromFile(FileStream, String, Int64, MemoryMappedFileAccess, HandleInheritability, Boolean) |
Belirtilen erişim modu, ad, devralınabilirlik ve kapasiteye sahip mevcut bir dosyadan belleğe eşlenmiş bir dosya oluşturur. |
| CreateFromFile(FileStream, String, Int64, MemoryMappedFileAccess, MemoryMappedFileSecurity, HandleInheritability, Boolean) |
Disk üzerindeki bir dosyadan belirtilen ada, kapasiteye, erişim türüne, güvenlik izinlerine, devralınabilirlik ve elden çıkarma gereksinimine sahip belleğe eşlenmiş bir dosya oluşturur. |
CreateFromFile(String)
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
Disk üzerindeki bir dosyadan belleğe eşlenmiş bir dosya oluşturur.
public:
static System::IO::MemoryMappedFiles::MemoryMappedFile ^ CreateFromFile(System::String ^ path);
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(string path);
static member CreateFromFile : string -> System.IO.MemoryMappedFiles.MemoryMappedFile
Public Shared Function CreateFromFile (path As String) As MemoryMappedFile
Parametreler
- path
- String
Eşlenecek dosyanın yolu.
Döndürülenler
Belleğe eşlenmiş bir dosya.
Özel durumlar
path boş bir dizedir, yalnızca boşluk içerir veya yöntemi tarafından tanımlandığı gibi bir veya daha fazla geçersiz karakter içerir GetInvalidFileNameChars() .
-veya-
path geçersiz bir cihaza başvuruyor.
path, null'e eşittir.
G/Ç hatası oluştu.
path işletim sistemi tarafından tanımlanan uzunluk üst sınırını aşıyor.
Çağıranın dosya için gerekli izinleri yok.
Örnekler
Aşağıdaki örnek, bellekle eşlenmiş bir dosya oluşturmak için yöntemini kullanır CreateFromFile ve ardından son derece büyük bir dosyanın bir bölümüne bellekle eşlenmiş bir görünüm oluşturur.
using System;
using System.IO;
using System.IO.MemoryMappedFiles;
using System.Runtime.InteropServices;
class Program
{
static void Main(string[] args)
{
long offset = 0x10000000; // 256 megabytes
long length = 0x20000000; // 512 megabytes
// Create the memory-mapped file.
using (var mmf = MemoryMappedFile.CreateFromFile(@"c:\ExtremelyLargeImage.data", FileMode.Open,"ImgA"))
{
// Create a random access view, from the 256th megabyte (the offset)
// to the 768th megabyte (the offset plus length).
using (var accessor = mmf.CreateViewAccessor(offset, length))
{
int colorSize = Marshal.SizeOf(typeof(MyColor));
MyColor color;
// Make changes to the view.
for (long i = 0; i < length; i += colorSize)
{
accessor.Read(i, out color);
color.Brighten(10);
accessor.Write(i, ref color);
}
}
}
}
}
public struct MyColor
{
public short Red;
public short Green;
public short Blue;
public short Alpha;
// Make the view brighter.
public void Brighten(short value)
{
Red = (short)Math.Min(short.MaxValue, (int)Red + value);
Green = (short)Math.Min(short.MaxValue, (int)Green + value);
Blue = (short)Math.Min(short.MaxValue, (int)Blue + value);
Alpha = (short)Math.Min(short.MaxValue, (int)Alpha + value);
}
}
Imports System.IO
Imports System.IO.MemoryMappedFiles
Imports System.Runtime.InteropServices
Class Program
Sub Main()
Dim offset As Long = &H10000000 ' 256 megabytes
Dim length As Long = &H20000000 ' 512 megabytes
' Create the memory-mapped file.
Using mmf = MemoryMappedFile.CreateFromFile("c:\ExtremelyLargeImage.data", FileMode.Open, "ImgA")
' Create a random access view, from the 256th megabyte (the offset)
' to the 768th megabyte (the offset plus length).
Using accessor = mmf.CreateViewAccessor(offset, length)
Dim colorSize As Integer = Marshal.SizeOf(GetType(MyColor))
Dim color As MyColor
Dim i As Long = 0
' Make changes to the view.
Do While (i < length)
accessor.Read(i, color)
color.Brighten(10)
accessor.Write(i, color)
i += colorSize
Loop
End Using
End Using
End Sub
End Class
Public Structure MyColor
Public Red As Short
Public Green As Short
Public Blue As Short
Public Alpha As Short
' Make the view brighter.
Public Sub Brighten(ByVal value As Short)
Red = CType(Math.Min(Short.MaxValue, (CType(Red, Integer) + value)), Short)
Green = CType(Math.Min(Short.MaxValue, (CType(Green, Integer) + value)), Short)
Blue = CType(Math.Min(Short.MaxValue, (CType(Blue, Integer) + value)), Short)
Alpha = CType(Math.Min(Short.MaxValue, (CType(Alpha, Integer) + value)), Short)
End Sub
End Structure
Ayrıca bkz.
Şunlara uygulanır
CreateFromFile(String, FileMode)
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
Disk üzerindeki bir dosyadan belirtilen erişim moduna sahip belleğe eşlenmiş bir dosya oluşturur.
public:
static System::IO::MemoryMappedFiles::MemoryMappedFile ^ CreateFromFile(System::String ^ path, System::IO::FileMode mode);
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(string path, System.IO.FileMode mode);
static member CreateFromFile : string * System.IO.FileMode -> System.IO.MemoryMappedFiles.MemoryMappedFile
Public Shared Function CreateFromFile (path As String, mode As FileMode) As MemoryMappedFile
Parametreler
- path
- String
Eşlenecek dosyanın yolu.
Döndürülenler
Belirtilen erişim moduna sahip, belleğe eşlenmiş bir dosya.
Özel durumlar
path boş bir dizedir, yalnızca boşluk içerir veya yöntemi tarafından tanımlandığı gibi bir veya daha fazla geçersiz karakter içerir GetInvalidFileNameChars() .
-veya-
path geçersiz bir cihaza başvuruyor.
-veya-
mode, Append'e eşittir.
path, null'e eşittir.
mode, Createveya CreateNewşeklindedirTruncate.
-veya-
mode ve OpenOrCreate disk üzerindeki dosya yok.
-veya-
G/Ç hatası oluştu.
path işletim sistemi tarafından tanımlanan uzunluk üst sınırını aşıyor.
Çağıranın dosya için gerekli izinleri yok.
Açıklamalar
mode parametresi disk üzerindeki kaynak dosyayla ilgili. Disk üzerindeki Open kaynak dosyadan bellek eşlemeli dosyayı oluşturmak için yalnızca numaralandırma değerini kullanabilirsiniz.
Ayrıca bkz.
Şunlara uygulanır
CreateFromFile(String, FileMode, String)
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
Disk üzerindeki bir dosyadan belirtilen erişim moduna ve ada sahip, belleğe eşlenmiş bir dosya oluşturur.
public:
static System::IO::MemoryMappedFiles::MemoryMappedFile ^ CreateFromFile(System::String ^ path, System::IO::FileMode mode, System::String ^ mapName);
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(string path, System.IO.FileMode mode, string? mapName);
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(string path, System.IO.FileMode mode, string mapName);
static member CreateFromFile : string * System.IO.FileMode * string -> System.IO.MemoryMappedFiles.MemoryMappedFile
Public Shared Function CreateFromFile (path As String, mode As FileMode, mapName As String) As MemoryMappedFile
Parametreler
- path
- String
Eşlenecek dosyanın yolu.
- mapName
- String
Bellekle eşlenen dosyaya atanacak veya null işlemler arasında paylaşmayı amaçlamadığınız bir MemoryMappedFile ad.
Döndürülenler
Belirtilen ada ve erişim moduna sahip, belleğe eşlenmiş bir dosya.
Özel durumlar
path boş bir dizedir, yalnızca boşluk içerir veya yöntemi tarafından tanımlandığı gibi bir veya daha fazla geçersiz karakter içerir GetInvalidFileNameChars() .
-veya-
path geçersiz bir cihaza başvuruyor.
-veya-
mapName boş bir dizedir.
-veya-
mode, Append'e eşittir.
path, null'e eşittir.
mode, Createveya CreateNewşeklindedirTruncate.
-veya-
mode ve OpenOrCreate disk üzerindeki dosya yok.
-veya-
G/Ç hatası oluştu.
path işletim sistemi tarafından tanımlanan uzunluk üst sınırını aşıyor.
Çağıranın dosya için gerekli izinleri yok.
Açıklamalar
mode parametresi disk üzerindeki kaynak dosyayla ilgili. Disk üzerindeki Open kaynak dosyadan bellek eşlemeli dosyayı oluşturmak için yalnızca numaralandırma değerini kullanabilirsiniz.
Şunlara uygulanır
CreateFromFile(String, FileMode, String, Int64)
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
Disk üzerindeki bir dosyadan belirtilen erişim moduna, ada ve kapasiteye sahip belleğe eşlenmiş bir dosya oluşturur.
public:
static System::IO::MemoryMappedFiles::MemoryMappedFile ^ CreateFromFile(System::String ^ path, System::IO::FileMode mode, System::String ^ mapName, long capacity);
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(string path, System.IO.FileMode mode, string? mapName, long capacity);
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(string path, System.IO.FileMode mode, string mapName, long capacity);
static member CreateFromFile : string * System.IO.FileMode * string * int64 -> System.IO.MemoryMappedFiles.MemoryMappedFile
Public Shared Function CreateFromFile (path As String, mode As FileMode, mapName As String, capacity As Long) As MemoryMappedFile
Parametreler
- path
- String
Eşlenecek dosyanın yolu.
- mapName
- String
Bellekle eşlenen dosyaya atanacak veya null işlemler arasında paylaşmayı amaçlamadığınız bir MemoryMappedFile ad.
- capacity
- Int64
Bellekle eşlenen dosyaya ayrılacak bayt cinsinden en büyük boyut. Kapasiteyi disk üzerindeki dosyanın boyutuna ayarlamak için 0 değerini belirtin.
Döndürülenler
Belirtilen özelliklere sahip belleğe eşlenmiş bir dosya.
Özel durumlar
path boş bir dizedir, yalnızca boşluk içerir veya yöntemi tarafından tanımlandığı gibi bir veya daha fazla geçersiz karakter içerir GetInvalidFileNameChars() .
-veya-
path geçersiz bir cihaza başvuruyor.
-veya-
mapName boş bir dizedir.
-veya-
mode, Append'e eşittir.
path, null'e eşittir.
capacity mantıksal adres alanının boyutundan büyüktür.
-veya-
capacity, sıfırdan küçüktür.
-veya-
capacity dosya boyutundan küçüktür (ancak sıfır değildir).
-veya-
capacity sıfırdır ve disk üzerindeki dosyanın boyutu da sıfırdır.
G/Ç hatası oluştu.
path işletim sistemi tarafından tanımlanan uzunluk üst sınırını aşıyor.
Çağıranın dosya için gerekli izinleri yok.
Açıklamalar
mode parametresi disk üzerindeki kaynak dosyayla ilgili.
Disk üzerindeki dosyanın boyutundan büyükse capacity , disk üzerindeki dosya bellekle eşlenen dosyaya veri yazılmasa bile belirtilen kapasiteyle eşleşecek şekilde artırılır. Bunun oluşmasını önlemek için, varsayılan kapasite için 0 (sıfır) değerini belirtin; bu, dahili olarak disk üzerindeki dosyanın boyutuna ayarlanır capacity .
Şunlara uygulanır
CreateFromFile(String, FileMode, String, Int64, MemoryMappedFileAccess)
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
Disk üzerindeki bir dosyadan belirtilen erişim moduna, ada, kapasiteye ve erişim türüne sahip belleğe eşlenmiş bir dosya oluşturur.
public:
static System::IO::MemoryMappedFiles::MemoryMappedFile ^ CreateFromFile(System::String ^ path, System::IO::FileMode mode, System::String ^ mapName, long capacity, System::IO::MemoryMappedFiles::MemoryMappedFileAccess access);
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(string path, System.IO.FileMode mode, string? mapName, long capacity, System.IO.MemoryMappedFiles.MemoryMappedFileAccess access);
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(string path, System.IO.FileMode mode, string mapName, long capacity, System.IO.MemoryMappedFiles.MemoryMappedFileAccess access);
[System.Security.SecurityCritical]
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(string path, System.IO.FileMode mode, string mapName, long capacity, System.IO.MemoryMappedFiles.MemoryMappedFileAccess access);
static member CreateFromFile : string * System.IO.FileMode * string * int64 * System.IO.MemoryMappedFiles.MemoryMappedFileAccess -> System.IO.MemoryMappedFiles.MemoryMappedFile
[<System.Security.SecurityCritical>]
static member CreateFromFile : string * System.IO.FileMode * string * int64 * System.IO.MemoryMappedFiles.MemoryMappedFileAccess -> System.IO.MemoryMappedFiles.MemoryMappedFile
Public Shared Function CreateFromFile (path As String, mode As FileMode, mapName As String, capacity As Long, access As MemoryMappedFileAccess) As MemoryMappedFile
Parametreler
- path
- String
Eşlenecek dosyanın yolu.
- mapName
- String
Bellekle eşlenen dosyaya atanacak veya null işlemler arasında paylaşmayı amaçlamadığınız bir MemoryMappedFile ad.
- capacity
- Int64
Bellekle eşlenen dosyaya ayrılacak bayt cinsinden en büyük boyut. Kapasiteyi disk üzerindeki dosyanın boyutuna ayarlamak için 0 değerini belirtin.
- access
- MemoryMappedFileAccess
Bellekle eşlenen dosyaya izin verilen erişim türünü belirten numaralandırma değerlerinden biri.
Döndürülenler
Belirtilen özelliklere sahip belleğe eşlenmiş bir dosya.
- Öznitelikler
Özel durumlar
mapName boş bir dizedir.
-veya-
access izin verilen bir değer değildir.
-veya-
path boş bir dosya belirtir.
-veya-
access olarak Read belirtilir ve kapasite tarafından pathbelirtilen dosyanın boyutundan büyüktür.
-veya-
mode, Append'e eşittir.
path, null'e eşittir.
capacity mantıksal adres alanının boyutundan büyüktür.
-veya-
capacity, sıfırdan küçüktür.
-veya-
capacity dosya boyutundan küçüktür (ancak sıfır değildir).
-veya-
capacity sıfırdır ve disk üzerindeki dosyanın boyutu da sıfırdır.
-veya-
access tanımlı MemoryMappedFileAccess bir değer değildir.
-veya-
tarafından path belirtilen dosyanın boyutu değerinden capacitybüyüktür.
path işletim sistemi tarafından tanımlanan uzunluk üst sınırını aşıyor.
Çağıranın dosya için gerekli izinleri yok.
Açıklamalar
mode parametresi disk üzerindeki kaynak dosyayla ilgili.
Disk üzerindeki dosyanın boyutundan büyükse capacity , disk üzerindeki dosya bellekle eşlenen dosyaya veri yazılmasa bile belirtilen kapasiteyle eşleşecek şekilde artırılır. Bunun oluşmasını önlemek için, varsayılan kapasite için 0 (sıfır) değerini belirtin; bu, dahili olarak disk üzerindeki dosyanın boyutuna ayarlanır capacity .
Ayrıca bkz.
Şunlara uygulanır
CreateFromFile(SafeFileHandle, String, Int64, MemoryMappedFileAccess, HandleInheritability, Boolean)
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
ve belirtilen erişim modunu, adı, devralınabilirliği ve kapasiteyi kullanarak mevcut bir dosyadan belleğe eşlenmiş bir SafeFileHandle dosya oluşturur.
public:
static System::IO::MemoryMappedFiles::MemoryMappedFile ^ CreateFromFile(Microsoft::Win32::SafeHandles::SafeFileHandle ^ fileHandle, System::String ^ mapName, long capacity, System::IO::MemoryMappedFiles::MemoryMappedFileAccess access, System::IO::HandleInheritability inheritability, bool leaveOpen);
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(Microsoft.Win32.SafeHandles.SafeFileHandle fileHandle, string? mapName, long capacity, System.IO.MemoryMappedFiles.MemoryMappedFileAccess access, System.IO.HandleInheritability inheritability, bool leaveOpen);
static member CreateFromFile : Microsoft.Win32.SafeHandles.SafeFileHandle * string * int64 * System.IO.MemoryMappedFiles.MemoryMappedFileAccess * System.IO.HandleInheritability * bool -> System.IO.MemoryMappedFiles.MemoryMappedFile
Public Shared Function CreateFromFile (fileHandle As SafeFileHandle, mapName As String, capacity As Long, access As MemoryMappedFileAccess, inheritability As HandleInheritability, leaveOpen As Boolean) As MemoryMappedFile
Parametreler
- fileHandle
- SafeFileHandle
SafeFileHandle var olan dosyaya. Çağıran, olduğunda leaveOpentrue (aksi takdirde, tarafından otomatik olarak atılır) atılmasından fileHandleMemoryMappedFilesorumludur.
- mapName
- String
Bellekle eşlenen dosyaya atanacak veya null işlemler arasında paylaşmayı amaçlamadığınız bir MemoryMappedFile ad.
- capacity
- Int64
Bellekle eşlenen dosyaya ayrılacak bayt cinsinden en büyük boyut. Kapasiteyi dosyanın boyutuna ayarlamak için 0 belirtin.
- access
- MemoryMappedFileAccess
Bellekle eşlenen dosyaya izin verilen erişim türünü belirten numaralandırma değerlerinden biri.
Bu parametre olarak Writeayarlanamaz.
- inheritability
- HandleInheritability
Bellek eşlemeli dosya tanıtıcısının bir alt işlem tarafından devralınıp devralınamayacağını belirten numaralandırma değerlerinden biri. Varsayılan değer: None.
- leaveOpen
- Boolean
atıldığında MemoryMappedFile kaynak dosya tanıtıcısının kapatılıp kapatılmayacağını gösteren değer.
Döndürülenler
Belirtilen özelliklere sahip belleğe eşlenmiş bir dosya.
Özel durumlar
mapName veya null boş bir dizedir.
-veya-
capacity ve dosyanın uzunluğu sıfırdır.
-veya-
access olarak ayarlanır Writeve bu ayara izin verilmez.
-veya-
access olarak ayarlanır Read ve capacity dosya uzunluğundan daha büyüktür.
fileHandle, null'e eşittir.
capacity, sıfırdan küçüktür.
-veya-
capacity dosya boyutundan küçüktür.
-veya-
access geçerli MemoryMappedFileAccess bir numaralandırma değeri değildir.
-veya-
inheritability geçerli HandleInheritability bir numaralandırma değeri değildir.
Şunlara uygulanır
CreateFromFile(FileStream, String, Int64, MemoryMappedFileAccess, HandleInheritability, Boolean)
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
- Kaynak:
- MemoryMappedFile.cs
Belirtilen erişim modu, ad, devralınabilirlik ve kapasiteye sahip mevcut bir dosyadan belleğe eşlenmiş bir dosya oluşturur.
public:
static System::IO::MemoryMappedFiles::MemoryMappedFile ^ CreateFromFile(System::IO::FileStream ^ fileStream, System::String ^ mapName, long capacity, System::IO::MemoryMappedFiles::MemoryMappedFileAccess access, System::IO::HandleInheritability inheritability, bool leaveOpen);
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(System.IO.FileStream fileStream, string? mapName, long capacity, System.IO.MemoryMappedFiles.MemoryMappedFileAccess access, System.IO.HandleInheritability inheritability, bool leaveOpen);
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(System.IO.FileStream fileStream, string mapName, long capacity, System.IO.MemoryMappedFiles.MemoryMappedFileAccess access, System.IO.HandleInheritability inheritability, bool leaveOpen);
static member CreateFromFile : System.IO.FileStream * string * int64 * System.IO.MemoryMappedFiles.MemoryMappedFileAccess * System.IO.HandleInheritability * bool -> System.IO.MemoryMappedFiles.MemoryMappedFile
Public Shared Function CreateFromFile (fileStream As FileStream, mapName As String, capacity As Long, access As MemoryMappedFileAccess, inheritability As HandleInheritability, leaveOpen As Boolean) As MemoryMappedFile
Parametreler
- fileStream
- FileStream
Mevcut dosyanın dosya akışı.
- mapName
- String
Bellekle eşlenen dosyaya atanacak veya null işlemler arasında paylaşmayı amaçlamadığınız bir MemoryMappedFile ad.
- capacity
- Int64
Bellekle eşlenen dosyaya ayrılacak bayt cinsinden en büyük boyut. Kapasiteyi boyutuna filestreamayarlamak için 0 değerini belirtin.
- access
- MemoryMappedFileAccess
Bellekle eşlenen dosyaya izin verilen erişim türünü belirten numaralandırma değerlerinden biri.
Bu parametre olarak Writeayarlanamaz.
- inheritability
- HandleInheritability
Bellek eşlemeli dosya tanıtıcısının bir alt işlem tarafından devralınıp devralınamayacağını belirten numaralandırma değerlerinden biri. Varsayılan değer: None.
- leaveOpen
- Boolean
atıldığında MemoryMappedFile kaynak dosya akışının kapatılıp kapatılmayacağını belirten bir değer.
Döndürülenler
Belirtilen özelliklere sahip belleğe eşlenmiş bir dosya.
Özel durumlar
mapName veya null boş bir dizedir.
-veya-
capacity ve dosyanın uzunluğu sıfırdır.
-veya-
access veya sabit listesi değerine ayarlanır WriteWrite ve buna izin verilmez.
-veya-
access olarak ayarlanır Read ve capacity uzunluğundan filestreamdaha büyüktür.
fileStream, null'e eşittir.
capacity, sıfırdan küçüktür.
-veya-
capacity dosya boyutundan küçüktür.
-veya-
access geçerli MemoryMappedFileAccess bir numaralandırma değeri değildir.
-veya-
inheritability geçerli HandleInheritability bir numaralandırma değeri değildir.
Şunlara uygulanır
CreateFromFile(FileStream, String, Int64, MemoryMappedFileAccess, MemoryMappedFileSecurity, HandleInheritability, Boolean)
Disk üzerindeki bir dosyadan belirtilen ada, kapasiteye, erişim türüne, güvenlik izinlerine, devralınabilirlik ve elden çıkarma gereksinimine sahip belleğe eşlenmiş bir dosya oluşturur.
public:
static System::IO::MemoryMappedFiles::MemoryMappedFile ^ CreateFromFile(System::IO::FileStream ^ fileStream, System::String ^ mapName, long capacity, System::IO::MemoryMappedFiles::MemoryMappedFileAccess access, System::IO::MemoryMappedFiles::MemoryMappedFileSecurity ^ memoryMappedFileSecurity, System::IO::HandleInheritability inheritability, bool leaveOpen);
[System.Security.SecurityCritical]
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(System.IO.FileStream fileStream, string mapName, long capacity, System.IO.MemoryMappedFiles.MemoryMappedFileAccess access, System.IO.MemoryMappedFiles.MemoryMappedFileSecurity memoryMappedFileSecurity, System.IO.HandleInheritability inheritability, bool leaveOpen);
[<System.Security.SecurityCritical>]
static member CreateFromFile : System.IO.FileStream * string * int64 * System.IO.MemoryMappedFiles.MemoryMappedFileAccess * System.IO.MemoryMappedFiles.MemoryMappedFileSecurity * System.IO.HandleInheritability * bool -> System.IO.MemoryMappedFiles.MemoryMappedFile
Public Shared Function CreateFromFile (fileStream As FileStream, mapName As String, capacity As Long, access As MemoryMappedFileAccess, memoryMappedFileSecurity As MemoryMappedFileSecurity, inheritability As HandleInheritability, leaveOpen As Boolean) As MemoryMappedFile
Parametreler
- fileStream
- FileStream
fileStream eşleştirecek dosyaya.
- mapName
- String
Bellekle eşlenen dosyaya atanacak veya null işlemler arasında paylaşmayı amaçlamadığınız bir MemoryMappedFile ad.
- capacity
- Int64
Bellekle eşlenen dosyaya ayrılacak bayt cinsinden en büyük boyut. Kapasiteyi disk üzerindeki dosyanın boyutuna ayarlamak için 0 değerini belirtin.
- access
- MemoryMappedFileAccess
Bellekle eşlenen dosyaya izin verilen erişim türünü belirten numaralandırma değerlerinden biri.
Bu parametre olarak Writeayarlanamaz.
- memoryMappedFileSecurity
- MemoryMappedFileSecurity
Bellekle eşlenen dosyalarda dosya erişimi ve işlemler için verilebilen izinler.
Bu parametre olabilir null.
- inheritability
- HandleInheritability
Bellek eşlemeli dosya tanıtıcısının bir alt işlem tarafından devralınıp devralınamayacağını belirten numaralandırma değerlerinden biri. Varsayılan değer: None.
- leaveOpen
- Boolean
truekapatıldıktan sonra fileStream atılmamasıMemoryMappedFile; false atılması fileStreamiçin .
Döndürülenler
Belirtilen özelliklere sahip belleğe eşlenmiş bir dosya.
- Öznitelikler
Özel durumlar
mapName boş bir dizedir.
-veya-
capacity ve dosyanın uzunluğu sıfırdır.
-veya-
access veya sabit listesi değerine ayarlanır ReadWrite ve buna izin verilmez.
fileStream, null'e eşittir.
capacity, sıfırdan küçüktür.
-veya-
capacity dosya boyutundan küçüktür.
-veya-
access geçerli MemoryMappedFileAccess bir numaralandırma değeri değildir.
-veya-
inheritability geçerli HandleInheritability bir numaralandırma değeri değildir.
fileStream kapalıydı.
mapName zaten var.
Açıklamalar
Disk üzerindeki dosyanın boyutundan büyükse capacity , disk üzerindeki dosya bellekle eşlenen dosyaya veri yazılmasa bile belirtilen kapasiteyle eşleşecek şekilde artırılır. Bunun oluşmasını önlemek için, varsayılan kapasite için 0 (sıfır) değerini belirtin; bu, dahili olarak disk üzerindeki dosyanın boyutuna ayarlanır capacity .