ResourceManager.GetStream ResourceManager.GetStream ResourceManager.GetStream ResourceManager.GetStream Method

Definition

Gibt ein nicht verwaltetes Arbeitsspeicher-Datenstromobjekt aus einer angegebenen Ressource zurück.Returns an unmanaged memory stream object from a specified resource.

Überlädt

GetStream(String) GetStream(String) GetStream(String) GetStream(String)

Gibt ein nicht verwaltetes Arbeitsspeicher-Datenstromobjekt aus der angegebenen Ressource zurück.Returns an unmanaged memory stream object from the specified resource.

GetStream(String, CultureInfo) GetStream(String, CultureInfo) GetStream(String, CultureInfo) GetStream(String, CultureInfo)

Gibt mithilfe der angegebenen Kultur ein nicht verwaltetes Arbeitsspeicherstreamobjekt aus der angegebenen Ressource zurück.Returns an unmanaged memory stream object from the specified resource, using the specified culture.

GetStream(String) GetStream(String) GetStream(String) GetStream(String)

Wichtig

Diese API ist nicht CLS-kompatibel.

Gibt ein nicht verwaltetes Arbeitsspeicher-Datenstromobjekt aus der angegebenen Ressource zurück.Returns an unmanaged memory stream object from the specified resource.

public:
 System::IO::UnmanagedMemoryStream ^ GetStream(System::String ^ name);
[System.Runtime.InteropServices.ComVisible(false)]
[System.CLSCompliant(false)]
public System.IO.UnmanagedMemoryStream GetStream (string name);
member this.GetStream : string -> System.IO.UnmanagedMemoryStream
Public Function GetStream (name As String) As UnmanagedMemoryStream

Parameter

name
String String String String

Der Name einer Ressource.The name of a resource.

Gibt zurück

Ein nicht verwaltetes Arbeitsspeicherstreamobjekt, das eine Ressource darstellt.An unmanaged memory stream object that represents a resource.

Ausnahmen

Der Wert der angegebenen Ressource ist kein MemoryStream-Objekt.The value of the specified resource is not a MemoryStream object.

Es wurde kein passender Satz von Ressourcen gefunden, und es sind keine Standardressourcen vorhanden.No usable set of resources is found, and there are no default resources. Informationen zur Behandlung dieser Ausnahme finden Sie im Abschnitt über die Behandlung von MissingManifestResourceException- und MissingSatelliteAssemblyException-Ausnahmen im Thema zur ResourceManager-Klasse.For information about how to handle this exception, see the "Handling MissingManifestResourceException and MissingSatelliteAssemblyException Exceptions" section in the ResourceManager class topic.

Die Ressourcen der Standardkultur befinden sich in einer Satellitenassembly, die nicht gefunden werden konnte.The default culture's resources reside in a satellite assembly that could not be found. Informationen zur Behandlung dieser Ausnahme finden Sie im Abschnitt über die Behandlung von MissingManifestResourceException- und MissingSatelliteAssemblyException-Ausnahmen im Thema zur ResourceManager-Klasse.For information about how to handle this exception, see the "Handling MissingManifestResourceException and MissingSatelliteAssemblyException Exceptions" section in the ResourceManager class topic.

Beispiele

Im folgenden Beispiel wird die GetStream(String) -Methode verwendet, um eine Bitmap abzurufen, die im Begrüßungsbildschirm-Fenster einer App erscheint.The following example uses the GetStream(String) method to retrieve a bitmap that is used in an app's opening splash window. Der folgende Quellcode aus einer Datei mit dem Namen CreateResources.cs (für c#) oder CreateResources.vb (für Visual Basic) generiert eine RESX-Datei mit dem Namen AppResources.resx, die das serialisierte Bild enthält.The following source code from a file named CreateResources.cs (for C#) or CreateResources.vb (for Visual Basic) generates a .resx file named AppResources.resx that contains the serialized image. In diesem Fall wird das Bild aus einer Datei namens SplashScreen.jpg geladen. Sie können den Dateinamen ändern und damit Ihr eigenes Bild laden.In this case, the image is loaded from a file named SplashScreen.jpg; you can modify the file name to substitute your own image.

using System;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;
using System.Resources;

public class Example
{
   public static void Main()
   {
      Bitmap bmp = new Bitmap(@".\SplashScreen.jpg");
      MemoryStream imageStream = new MemoryStream();
      bmp.Save(imageStream, ImageFormat.Jpeg);
      
      ResXResourceWriter writer = new ResXResourceWriter("AppResources.resx");
      writer.AddResource("SplashScreen", imageStream);
      writer.Generate();
      writer.Close();      
   }
}
Imports System.Drawing
Imports System.Drawing.Imaging
Imports System.IO
Imports System.Resources

Module Example
   Public Sub Main()
      Dim bmp As New Bitmap(".\SplashScreen.jpg")
      Dim imageStream As New MemoryStream()
      bmp.Save(imageStream, ImageFormat.Jpeg)
      
      Dim writer As New ResXResourceWriter("AppResources.resx")
      writer.AddResource("SplashScreen", imageStream)
      writer.Generate()
      writer.Close()      
   End Sub
End Module

Der folgende code aus einer Datei namens GetStream.cs (für c#) oder GetStream.vb (für Visual Basic), dann Ruft die Ressource ab und zeigt das Bild in einem System.Windows.Forms.PictureBox Steuerelement.The following code from a file named GetStream.cs (for C#) or GetStream.vb (for Visual Basic) then retrieves the resource and displays the image in a System.Windows.Forms.PictureBox control.

using System;
using System.Drawing;
using System.IO;
using System.Resources;
using System.Windows.Forms;

public class Example
{
   public static void Main()
   {
      ResourceManager rm = new ResourceManager("AppResources", typeof(Example).Assembly);
      Bitmap screen = (Bitmap) Image.FromStream(rm.GetStream("SplashScreen"));
      
      Form frm = new Form();
      frm.Size = new Size(300, 300);

      PictureBox pic = new PictureBox();
      pic.Bounds = frm.RestoreBounds;
      pic.BorderStyle = BorderStyle.Fixed3D; 
      pic.Image = screen;
      pic.SizeMode = PictureBoxSizeMode.StretchImage;

      frm.Controls.Add(pic);
      pic.Anchor = AnchorStyles.Top | AnchorStyles.Bottom |
                   AnchorStyles.Left | AnchorStyles.Right;

      frm.ShowDialog();
   }
}
Imports System.Drawing
Imports System.IO
Imports System.Resources
Imports System.Windows.Forms

Module Example
   Public Sub Main()
      Dim rm As New ResourceManager("AppResources", GetType(Example).Assembly)
      Dim screen As Bitmap = CType(Image.FromStream(rm.GetStream("SplashScreen")), Bitmap)
      
      Dim frm As New Form()
      frm.Size = new Size(300, 300)

      Dim pic As New PictureBox()
      pic.Bounds = frm.RestoreBounds
      pic.BorderStyle = BorderStyle.Fixed3D 
      pic.Image = screen
      pic.SizeMode = PictureBoxSizeMode.StretchImage

      frm.Controls.Add(pic)
      pic.Anchor = AnchorStyles.Top Or AnchorStyles.Bottom Or
                   AnchorStyles.Left Or AnchorStyles.Right

      frm.ShowDialog()
   End Sub
End Module

Sie können die folgende Batchdatei verwenden, um das C#-Beispiel zu erstellen.You can use the following batch file to build the C# example. Ändern Sie in Visual Basic csc in vbcund ändern Sie die Erweiterung des Quellcodes von .cs in .vb.For Visual Basic, change csc to vbc, and change the extension of the source code file from .cs to .vb.


csc CreateResources.cs  
CreateResources  

resgen AppResources.resx  

csc GetStream.cs /resource:AppResources.resources  

Hinweise

Die GetStream Methode erhält den Namen einer Ressource, die als gespeichert ist eine MemoryStream Objekt, ruft den Wert des der Object Ressource, und gibt eine UnmanagedMemoryStream Objekt.The GetStream method takes the name of a resource that is stored as a MemoryStream object, gets the value of the Object resource, and returns an UnmanagedMemoryStream object. Es ist erforderlich, dass diese arbeiten Sie direkt in einen Stream von Bytes, das Sie dann auf ein Objekt konvertieren.It requires that you work directly with a stream of bytes, which you then convert to an object. Diese Methode eignet sich in erster Linie zur Verbesserung der Leistung: Abrufen einer Ressource als Byte-Stream anstelle eines expliziten Objekts kann die Leistung verbessern.This method is useful primarily for performance reasons: Retrieving a resource as a byte stream instead of an explicit object can improve performance.

Die zurückgegebene Ressource lokalisiert wird, für die UI-Kultur des aktuellen Threads, die durch definiert wird die CultureInfo.CurrentUICulture Eigenschaft.The returned resource is localized for the UI culture of the current thread, which is defined by the CultureInfo.CurrentUICulture property. Wenn die Ressource für die jeweilige Kultur nicht lokalisiert ist, verwendet der Ressourcen-Manager fallback-Regeln, um eine entsprechende Ressource zu laden.If the resource is not localized for that culture, the resource manager uses fallback rules to load an appropriate resource. Wenn kein passender Satz von lokalisierten Ressourcen gefunden wird, die ResourceManager greift auf die Standardkultur Ressourcen zurück.If no usable set of localized resources is found, the ResourceManager falls back on the default culture's resources. Wenn ein Ressourcensatz, der für eine neutrale Kultur nicht gefunden wird, löst die Methode eine MissingManifestResourceException Ausnahme oder, wenn der Ressourcensatz in einer Satellitenassembly befinden soll eine MissingSatelliteAssemblyException Ausnahme.If a resource set for the default culture is not found, the method throws a MissingManifestResourceException exception or, if the resource set is expected to reside in a satellite assembly, a MissingSatelliteAssemblyException exception. Falls der Ressourcen-Manager laden, kann eine entsprechende Ressource festgelegt, aber eine Ressource mit dem Namen wurde nicht gefunden name, gibt die Methode zurück null.If the resource manager can load an appropriate resource set but cannot find a resource named name, the method returns null.

Die IgnoreCase Eigenschaft bestimmt, ob der Vergleich name mit den Namen der Ressourcen ist Groß-/Kleinschreibung (Standard) oder Groß-/Kleinschreibung beachtet.The IgnoreCase property determines whether the comparison of name with the names of resources is case-insensitive (the default) or case-sensitive.

Sicherheit

ReflectionPermission
Beim Aufruf spät gebundene durch Mechanismen wie z. B. InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]).when invoked late-bound through mechanisms such as InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]). Zugeordnete Enumeration: MemberAccessAssociated enumeration: MemberAccess.

GetStream(String, CultureInfo) GetStream(String, CultureInfo) GetStream(String, CultureInfo) GetStream(String, CultureInfo)

Wichtig

Diese API ist nicht CLS-kompatibel.

Gibt mithilfe der angegebenen Kultur ein nicht verwaltetes Arbeitsspeicherstreamobjekt aus der angegebenen Ressource zurück.Returns an unmanaged memory stream object from the specified resource, using the specified culture.

public:
 System::IO::UnmanagedMemoryStream ^ GetStream(System::String ^ name, System::Globalization::CultureInfo ^ culture);
[System.Runtime.InteropServices.ComVisible(false)]
[System.CLSCompliant(false)]
public System.IO.UnmanagedMemoryStream GetStream (string name, System.Globalization.CultureInfo culture);
member this.GetStream : string * System.Globalization.CultureInfo -> System.IO.UnmanagedMemoryStream
Public Function GetStream (name As String, culture As CultureInfo) As UnmanagedMemoryStream

Parameter

name
String String String String

Der Name einer Ressource.The name of a resource.

culture
CultureInfo CultureInfo CultureInfo CultureInfo

Ein Objekt, das die Kultur für die Ressourcensuche angibt.An object that specifies the culture to use for the resource lookup. Wenn culturenull ist, wird die Kultur für den aktuellen Thread verwendet.If culture is null, the culture for the current thread is used.

Gibt zurück

Ein nicht verwaltetes Arbeitsspeicherstreamobjekt, das eine Ressource darstellt.An unmanaged memory stream object that represents a resource.

Ausnahmen

Der Wert der angegebenen Ressource ist kein MemoryStream-Objekt.The value of the specified resource is not a MemoryStream object.

Es wurde kein passender Satz von Ressourcen gefunden, und es sind keine Standardressourcen vorhanden.No usable set of resources is found, and there are no default resources. Informationen zur Behandlung dieser Ausnahme finden Sie im Abschnitt über die Behandlung von MissingManifestResourceException- und MissingSatelliteAssemblyException-Ausnahmen im Thema zur ResourceManager-Klasse.For information about how to handle this exception, see the "Handling MissingManifestResourceException and MissingSatelliteAssemblyException Exceptions" section in the ResourceManager class topic.

Die Ressourcen der Standardkultur befinden sich in einer Satellitenassembly, die nicht gefunden werden konnte.The default culture's resources reside in a satellite assembly that could not be found. Informationen zur Behandlung dieser Ausnahme finden Sie im Abschnitt über die Behandlung von MissingManifestResourceException- und MissingSatelliteAssemblyException-Ausnahmen im Thema zur ResourceManager-Klasse.For information about how to handle this exception, see the "Handling MissingManifestResourceException and MissingSatelliteAssemblyException Exceptions" section in the ResourceManager class topic.

Hinweise

Die GetStream Methode erhält den Namen einer Ressource, die als gespeichert ist eine MemoryStream Objekt, ruft den Wert des der Object Ressource, und gibt eine UnmanagedMemoryStream Objekt.The GetStream method takes the name of a resource that is stored as a MemoryStream object, gets the value of the Object resource, and returns an UnmanagedMemoryStream object. Es ist erforderlich, dass diese arbeiten Sie direkt in einen Stream von Bytes, das Sie dann auf ein Objekt konvertieren.It requires that you work directly with a stream of bytes, which you then convert to an object. Diese Methode eignet sich in erster Linie zur Verbesserung der Leistung: Abrufen einer Ressource als Byte-Stream anstelle eines expliziten Objekts kann die Leistung verbessern.This method is useful primarily for performance reasons: Retrieving a resource as a byte stream instead of an explicit object can improve performance.

Die zurückgegebene Ressource lokalisiert wird, für die Kultur, die angegebenen culture, oder für die Kultur, die angegeben wird die CultureInfo.CurrentUICulture Eigenschaft Wenn culture ist null.The returned resource is localized for the culture that is specified by culture, or for the culture that is specified by the CultureInfo.CurrentUICulture property if culture is null. Wenn die Ressource für die jeweilige Kultur nicht lokalisiert ist, verwendet der Ressourcen-Manager fallback-Regeln, um eine entsprechende Ressource zu laden.If the resource is not localized for that culture, the resource manager uses fallback rules to load an appropriate resource. Wenn kein passender Satz von lokalisierten Ressourcen gefunden wird, die ResourceManager greift auf die Standardkultur Ressourcen zurück.If no usable set of localized resources is found, the ResourceManager falls back on the default culture's resources. Wenn ein Ressourcensatz, der für eine neutrale Kultur nicht gefunden wird, löst die Methode eine MissingManifestResourceException Ausnahme oder, wenn der Ressourcensatz in einer Satellitenassembly befinden soll eine MissingSatelliteAssemblyException Ausnahme.If a resource set for the default culture is not found, the method throws a MissingManifestResourceException exception or, if the resource set is expected to reside in a satellite assembly, a MissingSatelliteAssemblyException exception. Falls der Ressourcen-Manager laden, kann eine entsprechende Ressource festgelegt, aber eine Ressource mit dem Namen wurde nicht gefunden name, gibt die Methode zurück null.If the resource manager can load an appropriate resource set but cannot find a resource named name, the method returns null.

Die IgnoreCase Eigenschaft bestimmt, ob der Vergleich name mit den Namen der Ressourcen ist Groß-/Kleinschreibung (Standard) oder Groß-/Kleinschreibung beachtet.The IgnoreCase property determines whether the comparison of name with the names of resources is case-insensitive (the default) or case-sensitive.

Sicherheit

ReflectionPermission
Beim Aufruf spät gebundene durch Mechanismen wie z. B. InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]).when invoked late-bound through mechanisms such as InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]). Zugeordnete Enumeration: MemberAccessAssociated enumeration: MemberAccess.

Gilt für: