web-dev-qa-db-fra.com

Désactiver Invite à convertir les vidéos copiées sur un périphérique multimédia

J'ai un Samsung Galaxy S II qui, lorsqu'il est connecté à mon ordinateur Windows 7, agit comme un "lecteur multimédia portable".

GT-I9100 Portable Media Player

Chaque fois que j'essaie de copier une vidéo sur le périphérique, cela me demande si je veux la convertir, comme suit:

Do you want to convert <video> before it's copied to your device?

Cela devient assez pénible à long terme, alors j'aimerais le désactiver.

Existe-t-il un moyen de désactiver ces invites?

Pourquoi cela se produit

Cette invite est l’une des fonctionnalités que Windows implémente pour les périphériques connectés en tant que périphériques MTP . Le moyen le plus sûr de le désactiver est de connecter votre Galaxy SII en mode de stockage de masse USB. De cette façon, Windows le détectera comme un lecteur flash normal et transférera les fichiers comme n'importe quel autre lecteur flash sans se soucier du type. Certaines fonctionnalités plus avancées (souhaitées) peuvent toutefois être perdues.

Les deux moyens de base pour empêcher cela de se produire:

  • Connectez le téléphone en mode Stockage de masse.

  • Désactivez l'extension Shell sur Windows qui gère cela. Il y a deux façons de faire ceci :

    • Annuler l'enregistrement du .dll.

    • Désactiver l'extension avec ShellExView.


Option 1: Changer le mode de connexion du téléphone

Activation du mode Stockage de masse sur Galaxy SII ICS (Android 4.x) ( source ):

  1. Afficher les paramètres.
  2. Cliquez sur Plus… (sous Sans fil et réseau).
  3. Puis sélectionnez Utilitaires USB ~ Définir le mode de connexion par câble USB.
  4. Sélectionnez Connecter le stockage au PC puis.
  5. Connectez le câble USB du téléphone au PC.
  6. Sélectionnez Activer le stockage USB. C'est tout.

Option 2: Désenregistrer le .dll pour l'extension Windows Shell qui gère cette

Si vous souhaitez continuer à utiliser le mode MTP pour quelque raison que ce soit, , un fil de discussion a été créé sur Microsoft Answers et traite spécifiquement de la désactivation de cette invite. Plus précisément:

Eh bien, je ne pouvais pas trouver de références à cette boîte de dialogue dans aucun fichier Windows 7 DLL, alors je pensais que ce n'était pas lié à Windows. Mais j'ai maintenant regardé à nouveau et trouvé des références à cela dans wpdshext.dll. Donc, cela semble être une fonctionnalité standard de Windows, toutes mes excuses.

Je vous suggère d'essayer de désenregistrer le DLL en question. Ouvrez le menu Démarrer, sélectionnez Tous les programmes - Accessoires, cliquez avec le bouton droit de la souris sur Invite de commandes, puis sélectionnez Exécuter en tant qu'administrateur. Puis tapez la commande suivante:

regsvr32/u wpdshext.dll

Vous devriez probablement redémarrer après avoir exécuté la commande.

Je n'ai pas essayé cette méthode personnellement et la désinscription des DLL Windows standard peut avoir des conséquences inattendues. Si quelque chose ne va pas, je vous recommande de démarrer en mode sans échec et d'exécuter regsvr32 wpdshext.dll dans une invite de commande avec privilèges élevés.


Désactiver l'extension Shell

Cette méthode peut être plus sûre que la désinscription d'un .dll.

  1. Télécharger ShellExView

  2. Trouvez l'extension nommée Portable Devices Menu

  3. Clic droit> Disable Selected Items

  4. Redémarrez votre ordinateur (par sécurité)

29
Bob

Comme rien de ce qui est mentionné ne fonctionne pour moi sur Windows 8.1, voici une approche alternative utilisant un script dans AutoHotkey .

dlgTitle := "Copy"
dlgBtnUnwantedAction := "No, skip this file"
dlgBtnWantedAction := "Yes"
dlgTitleAlt := "Convert and Copy"
dlgBtnUnwantedActionAlt := "Yes, convert and copy (recommended)"
dlgBtnWantedActionAlt := "No, just copy"
dlgBtnCancel := "Cancel"
GroupAdd, dlgTitles, %dlgTitle% ahk_class #32770
GroupAdd, dlgTitles, %dlgTitleAlt% ahk_class #32770

SetTitleMatchMode 3
matchFound := false

Loop
{
    WinWait ahk_group dlgTitles
    matchFound := false

    ControlGetText, button1Text, Button1, ahk_group dlgTitles
    if ( button1Text = dlgBtnUnwantedAction || button1Text = dlgBtnUnwantedActionAlt ) {
        ControlGetText, button2Text, Button2, ahk_group dlgTitles
        if ( button2Text = dlgBtnWantedAction || button2Text = dlgBtnWantedActionAlt ) {
            ControlGetText, button3Text, Button3, ahk_group dlgTitles
            if ( button3Text = dlgBtnCancel ) {
                matchFound := true
            }
        }       
    }

    if ( matchFound ) {
        ControlClick, Button2, ahk_group dlgTitles
    } else {
        WinWaitClose ahk_group dlgTitles
    }
}
5
moneytoo

Des années plus tard ... il y a peut-être un moyen. Ouvrez regedit en tant qu'administrateur et dirigez-vous vers

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Portable Devices\FormatMap\

Sauvegardez ce "FormatMap".

Ensuite, nous allons essayer de tromper Windows ... En gros, vous devrez copier le contenu des clés "Format" et "ContentType" d'un format à un autre.

Essayez d'utiliser ces formats source:

.gif, .bmp for images (jpeg, png...) :
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Portable Devices\FormatMap\.gif]
"Format"="{38070000-AE6C-4804-98BA-C57B46965FE7}"
"ContentType"="{EF2107D5-A52A-4243-A26B-62D4176D7603}"

.wma for audio (mp3,mp4, aac, flac...) :
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Portable Devices\FormatMap\.wma]
"Format"="{B9010000-AE6C-4804-98BA-C57B46965FE7}"
"ContentType"="{4AD2C85E-5E2D-45E5-8864-4F229E3C6CF0}"

.wmv for video (avi mp4...) :
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Portable Devices\FormatMap\.wmv]
"Format"="{B9810000-AE6C-4804-98BA-C57B46965FE7}"
"ContentType"="{9261B03C-3D78-4519-85E3-02C5E1F50BB9}"

.doc, .xls, .ppt for documents or other files :
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Portable Devices\FormatMap\.doc]
"Format"="{BA830000-AE6C-4804-98BA-C57B46965FE7}"
"ContentType"="{680ADF52-950A-4041-9B41-65E393648155}"

par exemple, la clé d'origine pour flac est

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Portable Devices\FormatMap\.flac]
"Format"="{B9060000-AE6C-4804-98BA-C57B46965FE7}"
"ContentType"="{4AD2C85E-5E2D-45E5-8864-4F229E3C6CF0}"

Nous allons donc simplement changer l'identifiant de WMA:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Portable Devices\FormatMap\.flac]
"Format"="{B9010000-AE6C-4804-98BA-C57B46965FE7}"
"ContentType"="{4AD2C85E-5E2D-45E5-8864-4F229E3C6CF0}"

Nous pourrions aussi ajouter de nouveaux formats, comme .m4a (audio mp4):

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Portable Devices\FormatMap\.m4a]
"Format"="{B9010000-AE6C-4804-98BA-C57B46965FE7}"
"ContentType"="{4AD2C85E-5E2D-45E5-8864-4F229E3C6CF0}"

Cependant, cela peut avoir des effets indésirables sur toute application utilisant ces clés ... Peut-être que WMP?

1
clorydric

Ma solution consistait simplement à corriger wpdshext.dll

Sur mon système (Windows 7 x64, avec WMP non installé), la fonction qui ouvre la boîte de confirmation est

long __cdecl CObjectPropertyChecker::_DoesObjectMatchDeviceCapabilities(int)

qui retourne 0 si la copie est autorisée, sinon 1.

Je viens de remplacer les premiers octets de la fonction par:

xor rax,rax
ret

donc, il retourne toujours 0.

Fonctionne bien jusqu'à présent; Je ferai rapport si je remarque des résultats inattendus.


pour référence, le CRC de mon wpdshext.dll était d6ca5ac8, avant la correction

et _DoesObjectMatchDeviceCapabilities est à RVA 0x95118

1
Cauterite

Pour ceux d'entre vous qui ont des difficultés à appliquer l'une de ces suggestions techniques (comme moi), j'ai trouvé une solution de contournement. Créez simplement un nouveau dossier sur le bureau de votre PC et copiez-y tous les fichiers que vous souhaitez transférer sur votre appareil. Ensuite, une fois que cela est fait, faites simplement glisser le dossier entier sur votre appareil pour le copier comme d’habitude. L'invite apparaîtra, mais vous pouvez simplement sélectionner "faire ceci pour tous les fichiers" et le transfert s'effectuera dans tout le contenu du dossier sans vous demander à nouveau.

0
Russco