IStorage::OpenStream-Methode (objidl.h)
Die OpenStream-Methode öffnet ein vorhandenes Streamobjekt in diesem Speicherobjekt im angegebenen Zugriffsmodus.
Syntax
HRESULT OpenStream(
[in] const OLECHAR *pwcsName,
[in] void *reserved1,
[in] DWORD grfMode,
[in] DWORD reserved2,
[out] IStream **ppstm
);
Parameter
[in] pwcsName
Ein Zeiger auf eine Unicode-Zeichenfolge mit breitem Zeichen mit NULL-Zeichenfolge, die den Namen des zu öffnenden Datenstroms enthält. Die Zeichen 000 bis 01f, welche als erste Zeichen des Namens des Datenstroms/Speichers dienen, sind durch die OLE für die Benutzung reserviert. Dies ist eine Verbunddateieinschränkung, keine strukturierte Speichereinschränkung.
[in] reserved1
Reserviert für zukünftige Verwendung; muss NULL sein.
[in] grfMode
Gibt den Zugriffsmodus an, der dem geöffneten Stream zugewiesen werden soll. Weitere Informationen und Beschreibungen möglicher Werte finden Sie unter STGM-Konstanten. Andere Modi, die Sie auswählen, müssen mindestens STGM_SHARE_EXCLUSIVE angeben, wenn diese Methode in der Zusammengesetzten Dateiimplementierung aufgerufen wird.
[in] reserved2
Für die zukünftige Verwendung reserviert. Muss 0 (null) sein.
[out] ppstm
Ein Zeiger auf die IStream-Zeigervariable, die den Schnittstellenzeiger auf das neu geöffnete Streamobjekt empfängt. Wenn ein Fehler auftritt, muss *ppstm auf NULL festgelegt werden.
Rückgabewert
Diese Methode kann einen dieser Werte zurückgeben.
Rückgabecode | Beschreibung |
---|---|
S_OK | Der Stream wurde erfolgreich geöffnet. |
E_PENDING | Nur asynchroner Speicher: Ein Teil oder alle Datenstromdaten sind derzeit nicht verfügbar. |
STG_E_ACCESSDENIED | Nicht genügend Berechtigungen zum Öffnen des Streams. |
STG_E_FILENOTFOUND | Der Stream mit dem angegebenen Namen ist nicht vorhanden. |
STG_E_INSUFFICIENTMEMORY | Der Stream wurde aufgrund eines Mangels an Arbeitsspeicher nicht geöffnet. |
STG_E_INVALIDFLAG | Der für den grfMode-Parameter angegebene Wert ist kein gültiger STGM-Konstantenwert . |
STG_E_INVALIDFUNCTION | Die angegebene Kombination von Flags im grfMode-Parameter wird nicht unterstützt. Beispielsweise, wenn diese Methode ohne das flag STGM_SHARE_EXCLUSIVE aufgerufen wird. |
STG_E_INVALIDNAME | Ungültiger Wert für pwcsName. |
STG_E_INVALIDPOINTER | Der für das Streamobjekt angegebene Zeiger war ungültig. |
STG_E_INVALIDPARAMETER | Einer der Parameter war ungültig. |
STG_E_REVERTED | Das Speicherobjekt wurde durch einen rückgängig machen Vorgang darüber in der Transaktionsstruktur ungültig gemacht. |
STG_E_TOOMANYOPENFILES | Der Stream wurde nicht geöffnet, da zu viele dateien geöffnet sind. |
Hinweise
IStorage::OpenStream öffnet ein vorhandenes Streamobjekt in diesem Speicherobjekt im in grfMode angegebenen Zugriffsmodus. Es gibt Einschränkungen für die Berechtigungen, die in grfMode erteilt werden können. Beispielsweise beschränken die Berechtigungen für dieses Speicherobjekt die Berechtigungen für seine Streams. Im Allgemeinen müssen die Zugriffsbeschränkungen für Streams strenger sein als die für die übergeordneten Speicher. Datenströme für zusammengesetzte Dateien müssen mit STGM_SHARE_EXCLUSIVE geöffnet werden.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 2000 Professional [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [Desktop-Apps | UWP-Apps] |
Zielplattform | Windows |
Kopfzeile | objidl.h |
Bibliothek | Uuid.lib |
DLL | Ole32.dll |