Partager via


Protocole de transfert multimédia

Le protocole MTP (Media Transfer Protocol) vous permet de transférer des fichiers vers et depuis votre appareil Windows 10 IoT Standard via USB. Il permet d’accéder au stockage interne de l’appareil et au carte SD, le cas échéant.

La fonctionnalité fait partie des kits IoT Core, qui peuvent être téléchargés et installés à partir des packages Windows 10 IoT Standard.

Comment installer la fonctionnalité MTP sur un appareil exécutant Windows 10 IoT Standard

Provisionnement de l’appareil avec les packages requis

  1. Lancez PowerShell ou SSH et accédez à votre appareil exécutant Windows 10 IoT Standard.
  2. À partir de PowerShell ou SSH, procédez comme suit :
    1. Créez un dossier temporaire sur l’ordinateur cible (par exemple C:\MTPTemp).
    2. En fonction de l’architecture de votre appareil, copiez les packages suivants à partir de votre PC (C:\Program Files (x86)\Windows Kits\10\MSPackages\Retail\<arch>\fre) dans C:\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
    3. Exécutez ces commandes à partir de C:\MTPTemp pour installer les packages sur l’image système de votre appareil 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
  3. L’appareil démarre sur le système d’exploitation De mise à jour, installe la fonctionnalité MTP et redémarre sur MainOS.

Activation de l’interface USB MTP

Une fois que l’appareil revient à MainOS, la configuration USBFN doit toujours être mise à jour pour inclure MTP. Pour ce faire, vous devez ajouter MTP aux interfaces énumérées par USBFN. L’article paramètres du registre USB explique les détails de la configuration d’USB.

Bien que vous puissiez modifier la configuration USBFN par défaut disponible sous la HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\USBFN\Configurations\Default clé, il est recommandé de définir la vôtre, car elles ne seront pas remplacées par les mises à jour système.

Création d’une configuration USBFN avec l’interface MTP

Pour ajouter une nouvelle configuration avec MTP, procédez comme suit :

  1. Ajoutez une nouvelle clé sous HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\USBFN\Configurations. Exemple : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\USBFN\Configurations\MyConfiguration.
  2. Sous la nouvelle clé, créez une REG_MULTI_SZ valeur InterfaceList égale à MTP.
  3. Sous la même clé, créez une REG_BINARY valeur MSOSCompatIdDescriptor égale à 2800000000010400010000000000000000014D545000000000000000000000000000000000000000.
  4. Sous, HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\USBFN ajoutez une nouvelle REG_SZ valeur CurrentConfiguration égale au nom de la clé nouvellement créée. Dans cet exemple, il s’agit de MyConfiguration.
  5. [Facultatif] Sous HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\USBFN , ajoutez une nouvelle REG_DWORD valeur IncludeDefaultCfg égale à 1. Cela permet au pilote USB d’énumérer les interfaces par défaut avec MTP.

Notes

Si vous utilisez déjà une configuration personnalisée, vous devrez la modifier au lieu d’en créer une nouvelle.

Ajout de l’interface MTP à une configuration existante

Pour ajouter MTP à une configuration USBFN existante, procédez comme suit :

  1. Recherchez la configuration actuelle en vérifiant la CurrentConfiguration valeur sous HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\USBFN. Si la valeur est présente, la configuration actuelle se trouve sous HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\USBFN\Configurations\[CurrentConfiguration]. Sinon, il se trouve sous HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\USBFN\Configurations\Default.
  2. Sous la clé de configuration actuelle, ajoutez \0MTP à la valeur de InterfaceList. La partie \0 est utilisée comme type de InterfaceListREG_MULTI_SZ et nécessite ce séparateur entre les valeurs.
  3. Modifiez la MSOSCompatIdDescriptor valeur pour inclure le descripteur MTP. Pour créer un descripteur valide contenant toutes les interfaces actuellement sous la InterfaceList valeur , suivez la documentation des instructions disponible en bas de cette page. OS_Desc_CompatID.doc donne une explication du format du descripteur et un exemple d’inclusion de plusieurs interfaces dans le descripteur. Les ID compatibles et sous-compatibles de MTP sont également disponibles sur la même page et sont utilisés dans l’un des exemples.

Comment inclure MTP dans votre FFU personnalisé

  1. Ajoutez IOT_MTP’ID de fonctionnalité au fichier d’entrée OEM. Cela revient à suivre les étapes de la section « Provisionnement de l’appareil avec les packages requis ».
  2. Veillez à appliquer les mêmes modifications de Registre que celles mentionnées dans la section « Création d’une configuration USBFN avec l’interface MTP ». Suivez ces instructions pour savoir comment appliquer des modifications de Registre à un FFU.
  3. Créez l’image\FFU. Lisez cet article pour obtenir des instructions.

Avertissement

La modification de la configuration par défaut ne doit pas être tentée par le biais de la personnalisation FFU. Les entrées définies par le système peuvent être actualisées/modifiées par une mise à jour du système et tous les paramètres personnalisés seront perdus.

Comment configurer le filtre de carte SD MTP

Par défaut, MTP énumère tout le contenu d’un carte SD, s’il est présent sur l’appareil. Toutefois, il est possible de limiter cette énumération à un sous-dossier spécifique. Pour ce faire, vous devez ajouter une valeur MTPSDFolderFilter de Registre sous la clé HKEY_LOCAL_MACHINE\Software\Microsoft\MTPde Registre . La valeur est de type REG_SZ et doit contenir un chemin d’accès relatif au dossier que vous souhaitez énumérer par MTP. Le dossier est automatiquement créé s’il n’existe pas déjà.

Exemples de chemins d’accès :

  • \FirstLevelDirectory;
  • FirstLevelDirectory ;
  • \FirstLevelDirectory\SecondLevelDirectory;
  • Never\Before\Created\Directory.

Avertissement

N’utilisez pas de chemin d’accès absolu contenant la lettre de lecteur comme C:\Some\Folder\Path : cela peut empêcher l’énumération des carte SD.

Pour plus d’informations sur la personnalisation de votre image avec des entrées de Registre spécifiques, consultez ce lien .