MemoryMappedFile.OpenExisting Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Otevře existující pojmenovaný soubor mapovaný v systémové paměti.
Přetížení
| Name | Description |
|---|---|
| OpenExisting(String) |
Otevře existující soubor mapovaný v paměti, který má zadaný název v systémové paměti. |
| OpenExisting(String, MemoryMappedFileRights) |
Otevře existující soubor mapovaný v paměti, který má zadaný název a přístupová práva v systémové paměti. |
| OpenExisting(String, MemoryMappedFileRights, HandleInheritability) |
Otevře existující soubor mapovaný v paměti, který má zadaný název, přístupová práva a zděděnost v systémové paměti. |
OpenExisting(String)
- Zdroj:
- MemoryMappedFile.cs
- Zdroj:
- MemoryMappedFile.cs
- Zdroj:
- MemoryMappedFile.cs
- Zdroj:
- MemoryMappedFile.cs
- Zdroj:
- MemoryMappedFile.cs
Otevře existující soubor mapovaný v paměti, který má zadaný název v systémové paměti.
public:
static System::IO::MemoryMappedFiles::MemoryMappedFile ^ OpenExisting(System::String ^ mapName);
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public static System.IO.MemoryMappedFiles.MemoryMappedFile OpenExisting(string mapName);
public static System.IO.MemoryMappedFiles.MemoryMappedFile OpenExisting(string mapName);
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
static member OpenExisting : string -> System.IO.MemoryMappedFiles.MemoryMappedFile
static member OpenExisting : string -> System.IO.MemoryMappedFiles.MemoryMappedFile
Public Shared Function OpenExisting (mapName As String) As MemoryMappedFile
Parametry
- mapName
- String
Název souboru mapovaného paměti.
Návraty
Soubor mapovaný do paměti, který má zadaný název.
- Atributy
Výjimky
mapName je null.
mapName je prázdný řetězec.
Zadaný soubor mapName neexistuje.
Příklady
Otevření trvalého souboru Memory-Mapped
Následující příklad otevře soubor mapovaný na paměť s názvem ImgA , který již byl vytvořen ze souboru na disku (jak je znázorněno v příkladu pro metodu CreateFromFile(String) ).
using System;
using System.IO.MemoryMappedFiles;
using System.Runtime.InteropServices;
class Program
{
static void Main(string[] args)
{
// Assumes another process has created the memory-mapped file.
using (var mmf = MemoryMappedFile.OpenExisting("ImgA"))
{
using (var accessor = mmf.CreateViewAccessor(4000000, 2000000))
{
int colorSize = Marshal.SizeOf(typeof(MyColor));
MyColor color;
// Make changes to the view.
for (long i = 0; i < 1500000; i += colorSize)
{
accessor.Read(i, out color);
color.Brighten(20);
accessor.Write(i, ref color);
}
}
}
}
}
public struct MyColor
{
public short Red;
public short Green;
public short Blue;
public short Alpha;
// Make the view brigher.
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.MemoryMappedFiles
Imports System.Runtime.InteropServices
Class Program
Public Shared Sub Main(ByVal args As String())
' Assumes another process has created the memory-mapped file.
Using mmf = MemoryMappedFile.OpenExisting("ImgA")
Using accessor = mmf.CreateViewAccessor(4000000, 2000000)
Dim colorSize As Integer = Marshal.SizeOf(GetType(MyColor))
Dim color As MyColor
' Make changes to the view.
Dim i As Long = 0
While i < 1500000
accessor.Read(i, color)
color.Brighten(30)
accessor.Write(i, color)
i += colorSize
End While
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 brigher.
Public Sub Brighten(ByVal value As Short)
Red = CShort(Math.Min(Short.MaxValue, CInt(Red) + value))
Green = CShort(Math.Min(Short.MaxValue, CInt(Green) + value))
Blue = CShort(Math.Min(Short.MaxValue, CInt(Blue) + value))
Alpha = CShort(Math.Min(Short.MaxValue, CInt(Alpha) + value))
End Sub
End Structure
Otevření neuchovaného souboru Memory-Mapped
Následující příklad otevře soubor mapovaný v paměti, který se používá pro komunikaci mezi procesy. Tento příklad kódu je součástí většího příkladu poskytnutého pro metodu CreateNew(String, Int64) .
Poznámky
Soubor mapovaný do paměti může být buď trvalý soubor mapovaný do paměti (přidružený k souboru na disku), nebo ne trvalý.
Viz také
Platí pro
OpenExisting(String, MemoryMappedFileRights)
- Zdroj:
- MemoryMappedFile.cs
- Zdroj:
- MemoryMappedFile.cs
- Zdroj:
- MemoryMappedFile.cs
- Zdroj:
- MemoryMappedFile.cs
- Zdroj:
- MemoryMappedFile.cs
Otevře existující soubor mapovaný v paměti, který má zadaný název a přístupová práva v systémové paměti.
public:
static System::IO::MemoryMappedFiles::MemoryMappedFile ^ OpenExisting(System::String ^ mapName, System::IO::MemoryMappedFiles::MemoryMappedFileRights desiredAccessRights);
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public static System.IO.MemoryMappedFiles.MemoryMappedFile OpenExisting(string mapName, System.IO.MemoryMappedFiles.MemoryMappedFileRights desiredAccessRights);
public static System.IO.MemoryMappedFiles.MemoryMappedFile OpenExisting(string mapName, System.IO.MemoryMappedFiles.MemoryMappedFileRights desiredAccessRights);
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
static member OpenExisting : string * System.IO.MemoryMappedFiles.MemoryMappedFileRights -> System.IO.MemoryMappedFiles.MemoryMappedFile
static member OpenExisting : string * System.IO.MemoryMappedFiles.MemoryMappedFileRights -> System.IO.MemoryMappedFiles.MemoryMappedFile
Public Shared Function OpenExisting (mapName As String, desiredAccessRights As MemoryMappedFileRights) As MemoryMappedFile
Parametry
- mapName
- String
Název souboru mapovaného paměti, který se má otevřít.
- desiredAccessRights
- MemoryMappedFileRights
Jedna z hodnot výčtu, která určuje přístupová práva, která se mají použít pro soubor mapovaný v paměti.
Návraty
Soubor mapovaný do paměti, který má zadané charakteristiky.
- Atributy
Výjimky
mapName je null.
mapName je prázdný řetězec.
desiredAccessRights není platná MemoryMappedFileRights hodnota výčtu.
Zadaný soubor mapName neexistuje.
Viz také
Platí pro
OpenExisting(String, MemoryMappedFileRights, HandleInheritability)
- Zdroj:
- MemoryMappedFile.cs
- Zdroj:
- MemoryMappedFile.cs
- Zdroj:
- MemoryMappedFile.cs
- Zdroj:
- MemoryMappedFile.cs
- Zdroj:
- MemoryMappedFile.cs
Otevře existující soubor mapovaný v paměti, který má zadaný název, přístupová práva a zděděnost v systémové paměti.
public:
static System::IO::MemoryMappedFiles::MemoryMappedFile ^ OpenExisting(System::String ^ mapName, System::IO::MemoryMappedFiles::MemoryMappedFileRights desiredAccessRights, System::IO::HandleInheritability inheritability);
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public static System.IO.MemoryMappedFiles.MemoryMappedFile OpenExisting(string mapName, System.IO.MemoryMappedFiles.MemoryMappedFileRights desiredAccessRights, System.IO.HandleInheritability inheritability);
public static System.IO.MemoryMappedFiles.MemoryMappedFile OpenExisting(string mapName, System.IO.MemoryMappedFiles.MemoryMappedFileRights desiredAccessRights, System.IO.HandleInheritability inheritability);
[System.Security.SecurityCritical]
public static System.IO.MemoryMappedFiles.MemoryMappedFile OpenExisting(string mapName, System.IO.MemoryMappedFiles.MemoryMappedFileRights desiredAccessRights, System.IO.HandleInheritability inheritability);
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
static member OpenExisting : string * System.IO.MemoryMappedFiles.MemoryMappedFileRights * System.IO.HandleInheritability -> System.IO.MemoryMappedFiles.MemoryMappedFile
static member OpenExisting : string * System.IO.MemoryMappedFiles.MemoryMappedFileRights * System.IO.HandleInheritability -> System.IO.MemoryMappedFiles.MemoryMappedFile
[<System.Security.SecurityCritical>]
static member OpenExisting : string * System.IO.MemoryMappedFiles.MemoryMappedFileRights * System.IO.HandleInheritability -> System.IO.MemoryMappedFiles.MemoryMappedFile
Public Shared Function OpenExisting (mapName As String, desiredAccessRights As MemoryMappedFileRights, inheritability As HandleInheritability) As MemoryMappedFile
Parametry
- mapName
- String
Název souboru mapovaného paměti, který se má otevřít.
- desiredAccessRights
- MemoryMappedFileRights
Jedna z hodnot výčtu, která určuje přístupová práva, která se mají použít pro soubor mapovaný v paměti.
- inheritability
- HandleInheritability
Jedna z hodnot výčtu, která určuje, zda popisovač souboru mapovaného paměti může být zděděna podřízeným procesem. Výchozí hodnota je None.
Návraty
Soubor mapovaný do paměti, který má zadané charakteristiky.
- Atributy
Výjimky
mapName je null.
mapName je prázdný řetězec.
desiredAccessRights není platná MemoryMappedFileRights hodnota výčtu.
nebo
inheritability není platná HandleInheritability hodnota výčtu.
Požadovaný přístup je neplatný pro soubor mapovaný v paměti.
Zadaný soubor mapName neexistuje.