> ## 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.

# XGameSaveSubmitBlobWrite

> XGameSaveSubmitBlobWrite

# XGameSaveSubmitBlobWrite

Agrega una acción de escritura a un XGameSaveUpdate.

## Sintaxis

```cpp theme={null}
HRESULT XGameSaveSubmitBlobWrite(  
         XGameSaveUpdateHandle updateContext,  
         const char* blobName,  
         const uint8_t* data,  
         size_t byteCount  
)  
```

### Parámetros

*updateContext*   \_In\_\
Tipo: XGameSaveUpdateHandle

Identificador del **XGameSaveUpdate** en el que se escribirá el blob.

*blobName*   \_In\_z\_\
Tipo: char\*

Nombre del blob que se va a escribir. El tamaño del nombre del blob no debe ser mayor que GS\_MAX\_BLOB\_NAME\_SIZE, en bytes.

*data*   \_In\_reads\_bytes\_(byteCount)\
Tipo: uint8\_t\*

Datos que se van a escribir en el blob.

*byteCount*   \_In\_\
Tipo: size\_t

Tamaño de los datos que se van a escribir en el blob.  El tamaño de los datos del blob no debe ser mayor que GS\_MAX\_BLOB\_SIZE, en bytes.

<Note>Aunque el tamaño de los datos del blob está limitado a GS\_MAX\_BLOB\_SIZE, toda la actualización también está limitada a GS\_MAX\_BLOB\_SIZE. Si una actualización contiene un blob de GS\_MAX\_BLOB\_SIZE, las actualizaciones adicionales deben realizarse en solicitudes de actualización independientes.</Note>

### Valor devuelto

Tipo: HRESULT

Resultado de la función.

## Comentarios

<Note>No es seguro llamar a esta función en un subproceso sensible al tiempo. Para obtener más información, consulte [Subprocesos sensibles al tiempo](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/console-dev/overviews/threads/time-sensitive-threads).</Note>

Debe llamar correctamente a [XGameSaveCreateUpdate](/reference/system/xgamesave/functions/xgamesavecreateupdate) antes de realizar esta llamada.

La parte de almacenamiento de esta API está diseñada para transferir fácilmente datos del juego al almacenamiento persistente de forma segura, fiable y transaccional. Queremos asegurarnos de que los datos de respaldo de un contenedor sean siempre coherentes y, por ello, queremos que toda la operación se realice correctamente o falle de forma atómica. No queremos tener una actualización parcial en la que algunos datos de blob sean incoherentes con otros datos del contenedor. Para ello, proporcionamos un contexto de actualización al que se envían las escrituras y eliminaciones de blobs y, cuando está listo, se envía todo el contexto. Tenga en cuenta que solo puede escribir una modificación o eliminación por blob en un contexto de actualización. En la práctica, esto tiene el siguiente aspecto:

Un XGameSaveUpdate se rellenará con acciones de escritura (Write) y eliminación (Delete) que se llevarán a cabo en los blobs del contenedor mediante [XGameSaveSubmitBlobWrite](/reference/system/xgamesave/functions/xgamesavesubmitblobwrite) y [XGameSaveSubmitBlobDelete](/reference/system/xgamesave/functions/xgamesavesubmitblobdelete). Una actualización se completa llamando a [XGameSaveSubmitUpdate](/reference/system/xgamesave/functions/xgamesavesubmitupdate).

Consulte los [ejemplos de XGameSaveCreateUpdate](/reference/system/xgamesave/functions/xgamesavecreateupdate#example) para ver su uso.

## Requisitos

**Encabezado:** XGameSave.h

**Biblioteca:** xgameruntime.lib

**Plataformas compatibles:** Windows, consolas de la familia XBOX One y consolas XBOX Series

## Documentación conceptual

* [Subprocesos sensibles al tiempo](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/console-dev/overviews/threads/time-sensitive-threads)

## Consulte también

[XGameSave](/reference/system/xgamesave/xgamesave_members)\
[XGameSaveCreateUpdate](/reference/system/xgamesave/functions/xgamesavecreateupdate)\
[XGameSaveSubmitUpdate](/reference/system/xgamesave/functions/xgamesavesubmitupdate)\
[XGameSaveSubmitBlobDelete](/reference/system/xgamesave/functions/xgamesavesubmitblobdelete)\
[Depuración de partidas guardadas](/build/core-features/common/game-save/game-saves-debugging)


## Related topics

- [XGameSaveSubmitBlobDelete](/es/reference/system/xgamesave/functions/xgamesavesubmitblobdelete.md)
- [XGameSaveSubmitUpdate](/es/reference/system/xgamesave/functions/xgamesavesubmitupdate.md)
- [XGameSaveSubmitUpdateAsync](/es/reference/system/xgamesave/functions/xgamesavesubmitupdateasync.md)
- [XGameSaveCreateUpdate](/es/reference/system/xgamesave/functions/xgamesavecreateupdate.md)
- [Información general de la API XGameSave](/es/build/core-features/common/game-save/xgamesave.md)
