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

# Gerenciar o armazenamento XGameSave no console (xbstorage.exe)

> Gerenciar o armazenamento XGameSave no console (xbstorage.exe)

Use esta ferramenta para gerenciar o armazenamento XGameSave no console. A ferramenta fornece os subcomandos e funções a seguir.

> [!NOTE]
>
> Se você precisar gerenciar dados `XGameSave` no PC, deverá usar a
> [ferramenta de linha de comando xgamesaveutil.exe](https://docs.xbox.com/pt-BR/tools/tools-pc/commandlinetools/gr-xgamesaveutil.md).

| Comando | Descrição |
| - | - |
| [reset](#xbstorage_reset) | Exclui todos os dados locais do PFN e do SCID especificados no console |
| [import](#xbstorage_import) | Importa dados do arquivo XML especificado para um espaço de armazenamento XGameSave |
| [export](#xbstorage_export) | Exporta dados de um espaço de armazenamento XGameSave para o arquivo XML especificado |
| [delete](#xbstorage_delete) | Exclui dados de um espaço de armazenamento XGameSave |
| [generate](#xbstorage_generate) | Gera dados fictícios e os salva no arquivo XML especificado |
| [simulate](#xbstorage_simulate) | Simula condições de falta de espaço de armazenamento |

## xbstorage reset

Apaga todos os dados locais do armazenamento XGameSave no console local, restaurando-o às configurações de fábrica. Os dados mantidos na nuvem não são modificados e são baixados novamente, se necessário.

| Coluna 1 |
| - |
| **xbstorage reset** \[/force] |

| Opção | Descrição |
| - | - |
| /force | Confirma que o armazenamento `XGameSave` deve ser redefinido. Se você executar **reset** sem **/force**, o comando não redefinirá o armazenamento. |

## xbstorage import

Importa os dados especificados em *filename* para um espaço de armazenamento XGameSave. Esse arquivo XML contém os dados. Para ver um exemplo, veja [xbstorage generate](#xbstorage_generate) neste tópico. Para obter mais informações sobre o formato XML do arquivo, veja [Formato do arquivo de importação e exportação](#xbstorage_fileformat) neste tópico.

Há duas formas de especificar um espaço de armazenamento `XGameSave`.

* Se o arquivo de entrada tiver uma seção **ContextDescription** preenchida corretamente, essas informações serão usadas para especificar o espaço de armazenamento `XGameSave`.

* Você também pode especificar parcial ou totalmente o espaço de armazenamento usando parâmetros de linha de comando. Esses parâmetros têm precedência sobre os elementos correspondentes no arquivo de entrada.

Use os exemplos a seguir.

```
  xbstorage import mydata.xml
  xbstorage import mydata.xml /replace
  xbstorage import mydata.xml /machine /scid:2AAEB34B-DAB2-4879-B625-D970069C1D22
  xbstorage import mydata.xml /msa:user@example.com /scid:2AAEB34B-DAB2-4879-B625-D970069C1D22
  xbstorage import mydata.xml /verbose  
```

Antes da importação, o sistema tenta sincronizar o espaço de armazenamento `XGameSave` especificado com a nuvem usando a mesma lógica executada quando um aplicativo em execução adquire um espaço de armazenamento `XGameSave`.

Depois que a importação é concluída, o console começa a carregar os dados importados para a nuvem em segundo plano. O upload é concluído antes que o bloqueio da nuvem seja liberado. Esse comportamento difere da ferramenta de PC (`xgamesaveutil`), que grava dados somente no armazenamento local e não dispara um upload para a nuvem. Para obter mais informações, veja [Gerenciar dados XGameSave no PC (xgamesaveutil.exe)](https://docs.xbox.com/pt-BR/tools/tools-pc/commandlinetools/gr-xgamesaveutil.md).

Se um aplicativo com o mesmo identificador de configuração de serviço (SCID) primário estiver em execução, essa operação poderá causar uma condição de corrida e deixar o conteúdo do espaço de armazenamento `XGameSave` em um estado indeterminado.

Se **/replace** não for especificado, os contêineres especificados no arquivo de entrada serão apagados antes que os blobs especificados no arquivo de entrada sejam gravados. Os contêineres do espaço de armazenamento `XGameSave` que não estiverem especificados no arquivo de entrada não serão alterados.

| Coluna 1 |
| - |
| \*\*xbstorage import \*\**file-name* \[/scid:*SCID*] \[/machine] \[/msa:*account*] \[/replace] \[/verbose] |

| Opção | Descrição |
| - | - |
| *file-name* | O arquivo XML que contém os dados a serem importados. |
| /scid:*SCID* | O SCID. |
| /machine | Um espaço de armazenamento XGameSave por máquina. Essa opção não pode ser usada simultaneamente com a opção **/msa**. |
| /msa:*account* | A conta a ser usada para um armazenamento XGameSave por usuário. O usuário deve estar conectado ao console para que o espaço seja usado. Essa opção não pode ser usada simultaneamente com a opção **/machine**. |
| /replace | Antes da importação, exclui todos os contêineres do espaço de armazenamento `XGameSave` especificado. |
| /verbose | Exibe o status da operação de importação. |

## xbstorage export

Exporta dados de um espaço de armazenamento `XGameSave` para o arquivo especificado por **outfile**. O arquivo XML contém os dados exportados. Para ver um exemplo, veja [xbstorage generate](#xbstorage_generate) neste artigo. Para obter mais informações sobre o formato XML, veja [Formato do arquivo de importação e exportação](#xbstorage_fileformat).

Há duas formas de especificar o espaço de armazenamento `XGameSave`.

* Se o parâmetro **/context** for usado e o nome de arquivo especificado por \<infile> tiver uma seção **ContextDescription** preenchida corretamente, esse arquivo será usado para especificar o espaço de armazenamento `XGameSave`.

* Você também pode especificar parcial ou totalmente o espaço de armazenamento usando parâmetros de linha de comando. Esses parâmetros têm precedência sobre os elementos correspondentes especificados por **/context**.

Use os exemplos a seguir.

```
  xbstorage export exporteddata.xml /context:space.xml
  xbstorage export exporteddata.xml /machine /scid:2AAEB34B-DAB2-4879-B625-D970069C1D22
  xbstorage export exporteddata.xml /msa:user@example.com /scid:2AAEB34B-DAB2-4879-B625-D970069C1D22
  xbstorage export exporteddata.xml /context:space.xml /verbose  
```

Antes da exportação, o sistema tenta sincronizar o espaço de armazenamento `XGameSave` especificado com a nuvem usando a mesma lógica executada quando um aplicativo em execução adquire um espaço de armazenamento `XGameSave`.

Se um aplicativo com o mesmo SCID primário estiver em execução, essa operação poderá causar uma condição de corrida e deixar o conteúdo do espaço de armazenamento `XGameSave` em um estado indeterminado.

| Coluna 1 |
| - |
| \*\*xbstorage export \*\**outfile* \[/context:*input-file*] \[/scid:*SCID*] \[/machine] \[/msa:*account*] \[/verbose] |

| Opção | Descrição |
| - | - |
| *outfile* | O arquivo XML para o qual os dados são exportados. |
| /context:*input-file* | O arquivo de entrada do qual as informações do espaço devem ser lidas. |
| /scid:*SCID* | O SCID. |
| /machine | Um espaço de armazenamento XGameSave por máquina. Essa opção não pode ser usada simultaneamente com a opção **/msa**. |
| /msa:*account* | Uma conta a ser usada para um armazenamento XGameSave por usuário. O usuário deve estar conectado ao console para que o espaço seja usado. Essa opção não pode ser usada simultaneamente com a opção **/machine**. |
| /verbose | Exibe o status da operação **export**. |

## xbstorage delete

Exclui todos os dados de um espaço de armazenamento `XGameSave`. Há duas formas de especificar o espaço de armazenamento `XGameSave`.

* Se você usar o parâmetro **/context** e o arquivo especificado por \<input-file> tiver uma seção **ContextDescription** preenchida corretamente, esse arquivo será usado para especificar o espaço de armazenamento `XGameSave`.

* Você também pode especificar parcial ou totalmente o espaço de armazenamento usando parâmetros de linha de comando. Esses parâmetros têm precedência sobre os elementos correspondentes especificados por **/context**.

Use os exemplos a seguir.

```
  xbstorage delete /context:space.xml
  xbstorage delete /machine /scid:2AAEB34B-DAB2-4879-B625-D970069C1D22
  xbstorage delete /msa:user@example.com /scid:2AAEB34B-DAB2-4879-B625-D970069C1D22
  xbstorage delete /context:space.xml /verbose  
```

Antes da exclusão, o sistema tenta sincronizar o espaço de armazenamento `XGameSave` especificado com a nuvem usando a mesma lógica executada quando um aplicativo em execução adquire um espaço de armazenamento `XGameSave`.

Se um aplicativo com o mesmo SCID primário estiver em execução, essa operação poderá causar uma condição de corrida e deixar o conteúdo do espaço de armazenamento `XGameSave` em um estado indeterminado.

| Coluna 1 |
| - |
| **xbstorage delete** \[/context:*input-file*] \[/scid:*SCID*] \[/machine] \[/msa:*account*] \[/verbose] |

| Opção | Descrição |
| - | - |
| /context:*input-file* | O arquivo de entrada do qual as informações do espaço devem ser lidas. |
| /scid:*SCID* | O SCID. |
| /machine | Um espaço de armazenamento XGameSave por máquina. Essa opção não pode ser usada simultaneamente com a opção **/msa**. |
| /msa:*account* | A conta a ser usada para um armazenamento XGameSave por usuário. O usuário deve estar conectado ao console para que o espaço seja usado. Essa opção não pode ser usada simultaneamente com a opção **/machine**. |
| /verbose | Exibe o status da operação **delete**. |

## xbstorage generate

Gera dados fictícios e os salva no arquivo especificado por \<file-name>. Para obter mais informações sobre o formato XML, veja [Formato do arquivo de importação e exportação](#xbstorage_fileformat).

O SCID é definido como 00000000-0000-0000-0000-000000000000, e a conta é definida para um espaço de armazenamento `XGameSave` por máquina. Para alterar esses valores, edite o arquivo diretamente após a geração.

Use os exemplos a seguir.

```
  xbstorage generate dummydata.xml
  xbstorage generate dummydata.xml /containers:4
  xbstorage generate dummydata.xml /blobs:10
  xbstorage generate dummydata.xml /containers:4 /blobs:10
  xbstorage generate dummydata.xml /containers:4 /blobs:10 /blobsize:512  
```

Os dados de bytes são uma sequência crescente simples. Por exemplo, um blob de 5 bytes teria os seguintes bytes: 00 01 02 03 04.

Para especificar um espaço de armazenamento `XGameSave` por usuário, altere o nó **Account** no arquivo XML conforme mostrado no exemplo a seguir.

```
  
   <Account msa="user@example.com"/>  
```

| Coluna 1 |
| - |
| \*\*xbstorage generate \*\**file-name* \[/containers:*n*] \[/blobs:*n*] \[/blobsize:*n*] |

| Opção | Descrição |
| - | - |
| *file-name* | O arquivo XML no qual os dados são gravados. |
| /containers:*n* | O número de contêineres a serem gerados. O valor padrão de *n* é 2. |
| /blobs:*n* | O número de blobs a serem gerados. O valor padrão de *n* é 3. |
| /blobsize:*n* | O número de bytes por blob. O valor padrão de *n* é 1024. |

## xbstorage simulate

Simula condições de falta de armazenamento local para o serviço de armazenamento `XGameSave`.

| Coluna 1 |
| - |
| **xbstorage simulate** \[/reserveremainingspace] \[/forceoutoflocalstorage] \[/stop] \[/verbose] |

| Opção | Descrição |
| - | - |
| /reserveremainingspace | Reserva todo o espaço restante no armazenamento XGameSave. Excluir algo do armazenamento XGameSave disponibiliza algum espaço para uso. |
| /forceoutoflocalstorage | Simula o serviço de armazenamento XGameSave sem espaço disponível. Excluir algo do armazenamento XGameSave não faz com que o serviço de armazenamento XGameSave deixe de relatar falta de memória. |
| /stop | Interrompe todas as simulações. |
| /verbose | Exibe o status da operação **simulate**. |

## Opções comuns

| Coluna 1 |
| - |
| **xbstorage** \[/?] \[/X\*:address\* \[*+accesskey*] ] |

| Opção | Descrição |
| - | - |
| /? | Exibe a ajuda do xbstorage.exe. |
| /X\*:address\* \[*+accesskey*] | Use esta opção para especificar o nome do host ou o endereço (mostrado como **Tools IP** no console) de um console de destino sem alterar o console padrão. Para obter detalhes sobre como definir um nome de host para um console, veja [Definir um nome de host para o endereço IP do console](https://docs.xbox.com/pt-BR/home/setup-install/dev-kit-settings/setting-a-hostname.md).Se você não usar esta opção, será usado o console padrão (definido anteriormente por [Conexão (xbconnect.exe)](https://docs.xbox.com/pt-BR/tools/tools-console/commandlinetools/xbconnect.md)).Use a string *accesskey* para fornecer acesso ao console somente às pessoas que têm a chave de acesso. Defina a chave de acesso usando o comando **xbconfig** **accesskey=*your-key*** e, em seguida, reinicie o console para que a chave de acesso entre em vigor.Para acessar um console configurado com uma chave de acesso, inclua um sinal de adição (+) e a chave de acesso após o endereço IP ou o nome do host do console.Se uma chave de acesso for fornecida quando o console padrão for definido por [xbconnect](https://docs.xbox.com/pt-BR/tools/tools-console/commandlinetools/xbconnect.md), a chave de acesso será armazenada como parte do endereço do console padrão.Para obter mais informações sobre chaves de acesso, veja [xbconfig accesskey](https://docs.xbox.com/pt-BR/tools/tools-console/commandlinetools/xbconfig.md). |

## Formato do arquivo de importação e exportação

O arquivo XML usado com os comandos **import**, **export** e **generate** tem o formato mostrado no exemplo a seguir.

```xml theme={null}
  <?xml version="1.0" encoding="UTF-8"?> 
  <XbConnectedStorageSpace> 
    <ContextDescription> 
      <Account machine="true" /> 
      <Title scid="00000000-0000-0000-0000-000000000000" /> 
    </ContextDescription> 
    <Data> 
      <Containers> 
        <Container name="Container1"> 
          <Blobs> 
            <Blob name="Blob1"> 
              <![CDATA[... ] ]> 
            </Blob> 
            ... 
            <Blob name="BlobN"> 
              <![CDATA[... ] ]> 
            </Blob> 
          </Blobs>
        </Container> 
        ... 
        <Container name="ContainerN"> 
        ... 
        </Container> 
      </Containers> 
    </Data> 
  </XbConnectedStorageSpace>  
```

O formato dos dados nesse arquivo XML não é idêntico ao formato na plataforma. O formato pode mudar no futuro, portanto os arquivos devem ser tratados como se tivessem um formato intermediário ou utilitário, e não um formato de arquivamento.

O nó **ContextDescription** é opcional. Se você estiver criando um espaço de armazenamento `XGameSave` para um usuário, poderá usar `<Account msa="user@example.com"/>` em vez de `<Account machine="true"/>`. Caso contrário, você pode especificar o contexto na linha de comando para a importação.

Os blobs e contêineres devem ter os nomes correspondentes atribuídos a eles pelo jogo ou aplicativo para o qual o arquivo está sendo gerado.

O conteúdo de cada blob deve ser uma string encapsulada em uma marca **CDATA**, gerada chamando **CryptBinaryToStringW** com o sinalizador **CRYPT\_STRING\_BASE64** e fornecendo os dados desse blob como uma matriz de bytes brutos. Por outro lado, os dados do blob podem ser convertidos de volta chamando **CryptStringToBinary** para fornecer a string anteriormente criptografada. Para ver um exemplo de uso dessas duas funções, veja [CryptBinaryToString returns invalid bytes](https://social.msdn.microsoft.com/Forums/vstudio/9acac904-c226-4ae0-9b7f-261993b9fda2/cryptbinarytostring-returns-invalid-bytes?forum=vcgeneral).

## Veja também

[Ferramentas de linha de comando](https://docs.xbox.com/pt-BR/tools/tools-console/commandlinetools/commandlinetools.md)

[Erros de transporte do XTF](https://docs.xbox.com/pt-BR/tools/tools-console/commandlinetools/xtf-transport-errors.md)

[Conexão (xbconnect.exe)](https://docs.xbox.com/pt-BR/tools/tools-console/commandlinetools/xbconnect.md)

[Gerenciar dados XGameSave no PC (xgamesaveutil.exe)](https://docs.xbox.com/pt-BR/tools/tools-pc/commandlinetools/gr-xgamesaveutil.md)


## Related topics

- [Ferramentas de linha de comando para desenvolvimento em console](https://docs.xbox.com/pt-BR/tools/tools-console/commandlinetools/commandlinetools.md)
- [Gerenciar dados do XGameSave no PC (xgamesaveutil.exe)](https://docs.xbox.com/pt-BR/tools/tools-pc/commandlinetools/gr-xgamesaveutil.md)
- [Ferramentas de linha de comando para o desenvolvimento para PC](https://docs.xbox.com/pt-BR/tools/tools-pc/commandlinetools/gr-commandlinetools-toc.md)
- [Ferramentas do Game Saves](https://docs.xbox.com/pt-BR/build/core-features/common/game-save/game-saves-tools.md)
- [Armazenamento](https://docs.xbox.com/pt-BR/build/console-features/storage/index.md)
