> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# DSTORAGE_ERROR_RECORD

> DSTORAGE_ERROR_RECORD

# DSTORAGE\_ERROR\_RECORD

失敗した DirectStorage 要求の詳細なレコード。

## 構文

```cpp theme={null}
typedef struct DSTORAGE_ERROR_RECORD {  
    UINT32 FailureCount;  
    struct   
    {  
        HRESULT HResult ;  
        DSTORAGE_COMMAND_TYPE CommandType;  
        union  
        {  
            struct   
            {  
                DSTORAGE_REQUEST_OPTIONS Options;  
                void *Destination;  
                UINT32 DestinationSize;  
                WCHAR Filename[MAX_PATH];  
                UINT64 FileOffset;  
                void *Source;  
                UINT32 SourceSize;  
                UINT64 CancellationTag;  
                CHAR Name[DSTORAGE_REQUEST_MAX_NAME];  
            } Request;  
            struct   
            {  
                IDStorageStatusArrayX *StatusArray;  
                UINT32 Index;  
            } Status;  
            struct   
            {  
                ID3D12Fence *Fence;  
                UINT64 Value;  
            } Signal;  
        };  
    } FirstFailure;  
} DSTORAGE_ERROR_RECORD  
```

### メンバー

*FailureCount*\
Type: UINT32

前回の `RetrieveErrorRecord` 呼び出し以降にキュー内で失敗した要求の数。

*HResult*\
Type: HRESULT

失敗の HRESULT コード。

*CommandType*\
Type: [DSTORAGE\_COMMAND\_TYPE](/reference/system/dstorage/enums/dstorage_command_type)

失敗の原因となったエンキュー要求のタイプ。

*Options*\
Type: [DSTORAGE\_REQUEST\_OPTIONS](/reference/system/dstorage/structs/dstorage_request_options)

失敗した要求のさまざまなオプション。

*Destination*\
Type: void \*

失敗した要求の最終結果を受け取るバッファーのアドレス。

*DestinationSize*\
Type: UINT32

失敗した要求の最終結果の期待サイズ (バイト単位)。最初の要求の一部として渡されたもの。

*Filename*\
Type: WCHAR\[MAX\_PATH]

要求が対象としたファイルの名前。

*FileOffset*\
Type: UINT64

失敗した読み取り要求の開始位置までの、ファイル内のオフセット (バイト単位)。

\**Source*\
Type: void

メモリ ソース要求の場合、読み取り元のバッファーのアドレス。

*SourceSize*\
Type: UINT32

ソースから読み取るバイト数。

*CancellationTag*\
Type: UINT64

キャンセル マッチングに使用される任意の UINT64 番号。

*Name*\
Type: CHAR\[DSTORAGE\_REQUEST\_MAX\_NAME]

要求の名前。

\**StatusArray*\
Type: IDStorageStatusArrayX

ステータス書き込み要求の場合、[IDStorageStatusArrayX](/reference/system/dstorage/interfaces/IDStorageStatusArrayX/idstoragestatusarrayx) オブジェクト。

*Index*\
Type: UINT32

ステータス書き込み要求の場合、ステータスを受け取る `IDStorageStatusArrayX` オブジェクト内のステータス エントリのインデックス。

\**Fence*\
Type: ID3D12Fence

フェンス書き込み要求の場合、`ID3D12Fence` オブジェクト。

*Value*\
Type: UINT64

フェンス書き込み要求の場合、フェンスに書き込む値。

## 解説

この構造体は、[IDStorageQueueX::RetrieveErrorRecord](/reference/system/dstorage/interfaces/IDStorageQueueX/methods/idstoragequeuex_retrieveerrorrecord) メソッドで使用されます。

*CommandType* が `DSTORAGE_COMMAND_TYPE_NONE` の場合、残りのデータは未定義です。

詳細については、[DirectStorage の概要](/build/console-features/storage/directstorage/directstorage-overview) の「GetErrorEvent/RetrieveErrorRecord」セクションを参照してください。

## 要件

**ヘッダー:** dstorage\_xs.h

**サポートされているプラットフォーム:** XBOX Series 本体

## 関連項目

[DStorage](/reference/system/dstorage/dstorage_members)


## Related topics

- [IDStorageQueueX::RetrieveErrorRecord](/ja-jp/reference/system/dstorage/interfaces/IDStorageQueueX/methods/idstoragequeuex_retrieveerrorrecord.md)
- [DSTORAGE_COMMAND_TYPE](/ja-jp/reference/system/dstorage/enums/dstorage_command_type.md)
- [DSTORAGE_REQUEST_OPTIONS](/ja-jp/reference/system/dstorage/structs/dstorage_request_options.md)
- [DStorage](/ja-jp/reference/system/dstorage/dstorage_members.md)
- [IDStorageQueueX::CancelRequestsWithTag](/ja-jp/reference/system/dstorage/interfaces/IDStorageQueueX/methods/idstoragequeuex_cancelrequestswithtag.md)
