ID3DInclude::Open-Methode (d3dcommon.h)

Eine vom Benutzer implementierte Methode zum Öffnen und Lesen des Inhalts eines Shaders #include Datei.

Syntax

HRESULT Open(
  D3D_INCLUDE_TYPE IncludeType,
  LPCSTR           pFileName,
  LPCVOID          pParentData,
  LPCVOID          *ppData,
  UINT             *pBytes
);

Parameter

IncludeType

Typ: D3D_INCLUDE_TYPE

Ein D3D_INCLUDE_TYPE typisierter Wert, der den Speicherort der #include-Datei angibt.

pFileName

Typ: LPCSTR

Der Name der #include-Datei.

pParentData

Typ: LPCVOID

Zeiger auf den Container, der die #include-Datei enthält. Der Compiler übergibt möglicherweise NULL in pParentData. Weitere Informationen finden Sie im Abschnitt "Suchen nach Eingeschlossenen Dateien" unter Kompilieren eines Effekts (Direct3D 11).

ppData

Typ: LPCVOID*

Zeiger auf den Puffer, der die Include-Anweisungen enthält. Dieser Zeiger bleibt gültig, bis SieID3DInclude::Close aufrufen.

pBytes

Typ: UINT*

Zeiger auf die Anzahl von Bytes, die Open in ppData zurückgibt.

Rückgabewert

Typ: HRESULT

Die vom Benutzer implementierte Methode muss S_OK zurückgeben. Wenn Open beim Lesen der #include-Datei fehlschlägt, schlägt die Anwendungsprogrammierschnittstelle (API), die den Aufruf von Open verursacht hat, fehl. Dieser Fehler kann in einer der folgenden Situationen auftreten:

  • Der HLSL-Shader (High-Level Shader Language) schlägt eine der D3D10CompileShader*** -Funktionen fehl.
  • Der Effekt schlägt eine der D3D10CreateEffect***- Funktionen fehl.

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile d3dcommon.h
Bibliothek D3DCompiler.lib
DLL D3DCompiler_47.dll

Weitere Informationen

ID3DInclude

ID3DInclude::Close