Exécuter un programme lorsque le périphérique de stockage de masse USB est connecté [dupliquer]

1

Je souhaite exécuter un programme, par exemple un fichier de commandes, lorsqu'un périphérique de stockage de masse USB est connecté. Je souhaite également transmettre la lettre de lecteur en tant que paramètre à ce fichier de commandes.

Ceci peut peut-être être réalisé en utilisant une combinaison de gestionnaire d’événements et de planificateur de tâches, mais je ne sais pas comment.
Je suis également ouvert à utiliser des programmes tiers tant qu'ils sont gratuits.

Je connais en fait un logiciel qui a cette capacité. Mais je cherche une alternative gratuite.

PS: J'utilise Windows 7 x64 Ultimate

tumchaaditya
la source
certaines parties sont communes dans les deux questions .... mais cette question n'a pas de réponse satisfaisante ... de plus, je dois passer la lettre de lecteur comme argument de ligne de commande ...
tumchaaditya
Aucune réponse satisfaisante ne signifie que les dupes sont autorisées. De plus, s'il existe une solution de détection fiable via les journaux des événements, ceux-ci doivent contenir des détails sur la lettre de lecteur attribuée. Il devrait être évident que les gens qui cherchent dans ce voudraient faire quelque chose avec le lecteur (par exemple. Copier des fichiers) quand il est branché, pour lequel la lettre du lecteur est un must. Ce point est plutôt lié au problème principal. Enfin, en cherchant, j'ai trouvé 3 à 4 autres questions dans la même ligne que la vôtre et toutes marquées comme des doublons, il est donc presque certain qu'il y a une dupe exacte quelque part entre elles.
Karan
Voir aussi ici . Je viens de penser: au lieu de transmettre la lettre de lecteur au fichier de commandes, le fichier de commandes lui-même peut déterminer quels lecteurs amovibles sont connectés une fois qu'il est appelé. wmic logicaldisk where drivetype=2montrera tous les attributs, filtre autre comme celui - ci: wmic logicaldisk where drivetype=2 get caption,description,drivetype,filesystem,volumename. devcon peut aussi aider; utiliser devcon find *usbstor*ou devcon status *usbstor*.
Karan
@ Karan Bien que je convienne que, dans ce cas, il y a plusieurs questions préexistantes pertinentes, gardez à l'esprit qu'un degré modéré de duplication n'est pas intrinsèquement une mauvaise chose . Dans ce cas particulier, je pense que c'est un doublon assez exact, et une réponse à la question plus ancienne répondrait aux besoins de la question plus récente.
nhinkle

Réponses:

0

C'est assez simple d'utiliser EventVwr - il suffit de cliquer avec le bouton droit de la souris sur l'événement et de cliquer sur "Attacher une tâche à cet événement". Vous avez juste besoin de trouver l'événement spécifique que vous voulez. Lorsque j'ai branché un périphérique de stockage de masse USB, les événements suivants (sous catégorie d'application) ont été déclenchés: 20001, 20003, 7036 et quelques autres moins pertinents. Il vous suffit de tester ces événements avec d'autres événements de périphériques USB pour éviter les faux positifs.

EliadTech
la source
ok..toute possibilité d'envoyer une lettre de lecteur en tant que paramètre? .. PS: il y a l'événement 2006 aussi, je suppose
tumchaaditya
Je n'ai rien trouvé sur la lettre de lecteur dans ces événements. Vous pouvez utiliser le script Karan (ce qui est très intelligent) et le modifier selon vos besoins. Mais, je sais qu’il existe un moyen de se connecter à n’importe quel lecteur et dossier contenant des jonctions. Je l'ai utilisé par le passé pour entrer une copie de volume fantôme spécifique. Je suppose donc qu'il peut également être utilisé ici. Pour cela, vous devez obtenir le code UNC du lecteur USB et lui créer une jonction.
EliadTech