Protocolo de transferência de mídia
O PROTOCOLO MTP permite que você transfira arquivos de e para seu dispositivo Windows 10 IoT Core por meio de USB. Ele permite o acesso ao armazenamento interno do dispositivo e ao SD cartão, se presente.
O recurso faz parte dos Kits do IoT Core, que podem ser baixados e instalados do Windows 10 IoT Core Packages.
Como instalar o recurso MTP em um dispositivo que executa Windows 10 IoT Core
Provisionando o dispositivo com pacotes necessários
- Inicie o PowerShell ou o SSH e acesse o dispositivo executando Windows 10 IoT Core.
- No PowerShell ou no SSH, faça o seguinte:
- Crie uma pasta temporária no computador de destino (por exemplo,
C:\MTPTemp
). - Com base na arquitetura do dispositivo, copie os seguintes pacotes do computador (
C:\Program Files (x86)\Windows Kits\10\MSPackages\Retail\<arch>\fre
) paraC:\MTPTemp
:Microsoft-OneCoreUAP-Mtp-UserService-Package.cab
Microsoft-OneCoreUAP-Mtp-UserService-Package_Lang_en-US.cab
Microsoft-WindowsStorSvc-API-Schema-Extension-Package.cab
Microsoft-WindowsStorSvc-API-Schema-Extension-Package_Lang_en-US.cab
- Execute estes comandos de
C:\MTPTemp
para instalar os pacotes na imagem do sistema do dispositivo IoT:ApplyUpdate.exe -stage Microsoft-OneCoreUAP-Mtp-UserService-Package.cab
ApplyUpdate.exe -stage Microsoft-OneCoreUAP-Mtp-UserService-Package_Lang_en-US.cab
ApplyUpdate.exe -stage Microsoft-WindowsStorSvc-API-Schema-Extension-Package.cab
ApplyUpdate.exe -stage Microsoft-WindowsStorSvc-API-Schema-Extension-Package_Lang_en-US.cab
ApplyUpdate.exe -commit
- Crie uma pasta temporária no computador de destino (por exemplo,
- O dispositivo será inicializado no sistema operacional update, instalará o recurso MTP e reiniciará para o MainOS.
Habilitando a interface USB MTP
Depois que o dispositivo voltar para o MainOS, a configuração do USBFN ainda precisará ser atualizada para incluir o MTP. Para fazer isso, você precisará adicionar MTP às interfaces enumeradas pela USBFN. O artigo Configurações do registro USB explica os detalhes da configuração do USB.
Embora você possa modificar a configuração padrão do USBFN disponível na HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\USBFN\Configurations\Default
chave, é recomendável definir a sua própria, pois elas não serão substituídas por atualizações do sistema.
Criando uma nova configuração de USBFN com a interface MTP
Siga estas etapas para adicionar uma nova configuração com MTP:
- Adicione uma nova chave em
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\USBFN\Configurations
. Exemplo:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\USBFN\Configurations\MyConfiguration
. - Na nova chave, crie um
REG_MULTI_SZ
valorInterfaceList
igual aMTP
. - Na mesma chave, crie um
REG_BINARY
valorMSOSCompatIdDescriptor
igual a2800000000010400010000000000000000014D545000000000000000000000000000000000000000
. - Em
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\USBFN
, adicione um novoREG_SZ
valorCurrentConfiguration
igual ao nome da chave recém-criada. Nesse caso, ele seriaMyConfiguration
. - [Opcional] Em
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\USBFN
, adicione um novoREG_DWORD
valorIncludeDefaultCfg
igual a 1. Isso fará com que o driver USB enumere as interfaces padrão junto com o MTP.
Observação
Se você já estiver usando uma configuração personalizada, precisará modificá-la em vez de criar uma nova.
Adicionando a interface MTP a uma configuração existente
Siga estas etapas para adicionar o MTP a uma configuração usbfn existente:
- Localize a configuração atual verificando o
CurrentConfiguration
valor emHKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\USBFN
. Se o valor estiver presente, a configuração atual poderá ser encontrada emHKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\USBFN\Configurations\[CurrentConfiguration]
. Caso contrário, ele estará emHKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\USBFN\Configurations\Default
. - Na chave de configuração atual, adicione
\0MTP
ao valor deInterfaceList
. A parte \0 é usada como o tipo deInterfaceList
éREG_MULTI_SZ
e requer esse separador entre valores. - Modifique o
MSOSCompatIdDescriptor
valor para incluir o descritor do MTP. Para criar um descritor válido que contém todas as interfaces atualmente sob oInterfaceList
valor , siga a documentação de instruções disponível na parte inferior desta página. OS_Desc_CompatID.doc fornece uma explicação do formato do descritor e um exemplo de como incluir várias interfaces no descritor. As IDs compatíveis e subcompatíveis do MTP também estão disponíveis na mesma página e são usadas em um dos exemplos.
Como incluir MTP em sua FFU personalizada
- Adicione IOT_MTP ID do recurso ao arquivo de entrada OEM. Isso é equivalente a seguir as etapas da seção "Provisionamento do dispositivo com pacotes necessários".
- Aplique as mesmas alterações do Registro mencionadas na seção "Criando uma nova configuração de USBFN com a interface MTP". Siga estas instruções para saber como aplicar alterações de registro a uma FFU.
- Crie a imagem\FFU. Leia este artigo para obter instruções.
Aviso
A modificação da configuração padrão não deve ser tentada por meio da personalização de FFU. As entradas definidas pelo sistema podem ser atualizadas/alteradas por uma atualização do sistema e todas as configurações personalizadas serão perdidas.
Como configurar o filtro de cartão do MTP SD
Por padrão, o MTP enumerará todo o conteúdo de um cartão SD, se ele estiver presente no dispositivo. No entanto, é possível limitar essa enumeração a uma subpasta específica. Para fazer isso, você deve adicionar um valor MTPSDFolderFilter
do Registro sob a chave HKEY_LOCAL_MACHINE\Software\Microsoft\MTP
do Registro .
O valor é do tipo REG_SZ
e deve conter um caminho relativo para a pasta que você gostaria que o MTP enumerasse. A pasta será criada automaticamente se ainda não existir.
Caminhos de exemplo:
- \FirstLevelDirectory;
- FirstLevelDirectory;
- \FirstLevelDirectory\SecondLevelDirectory;
- Never\Before\Created\Directory.
Aviso
Não use um caminho absoluto que contenha a letra da unidade como C:\Some\Folder\Path
, isso pode impedir que o cartão SD seja enumerado.
Consulte este link para obter detalhes sobre como personalizar sua imagem com entradas específicas do Registro.