Attribution de lettre de lecteur - Port physique

Fermé
Te_Tienne Messages postés 4 Date d'inscription mardi 3 mai 2022 Statut Membre Dernière intervention 3 mai 2022 - 3 mai 2022 à 10:11
brucine Messages postés 16738 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 19 septembre 2024 - 3 mai 2022 à 12:55
Bonjour à tous!

Ma question va surprendre certains, mais il y a réellement un intérêt :)

Lorsque je connecte une clé usb, une carte SD ou peu importe quel périphérique de stockage, j'aimerais pouvoir attribuer la lettre de lecteur en fonction du port physique sur lequel je branche.

Imaginons qu'en facade, j'ai 3 ports USB et un port pour carte SD, j'aimerais, par exemple, assigner automatiquement la lettre M à USB1, N à USB2, O à USB3 et P à SD

J'ai épluché les forums (enfin... Le peu de sujets que j'ai pu trouver qui s'approchaient de près ou de loin de ma demande) et je n'ai absolument rien trouvé.

Je suppose que je ne pourrais pas le faire directement avec windows, j'envisage de passer par un script (je ne sais pas encore comment le lancer automatiquement au branchement d'un périphérique, mais chaque chose en son temps).
Sauf si quelqu'un connait une fonctionnalité windows ou un logiciel qui peut me permettre de faire ça, ce serait top!

Sinon! Pour faire mon script, j'aurais au moins besoin de trouver un lien entre le périphérique et une référence de port physique que je puisse les utiliser comme valeurs dans le script, donc qui soient récupérables et exploitables en invité de commande ou powershell.

Je vous remercie d'avance pour vos réponses!
A voir également:

2 réponses

Te_Tienne Messages postés 4 Date d'inscription mardi 3 mai 2022 Statut Membre Dernière intervention 3 mai 2022
3 mai 2022 à 10:46
J'anticipe les demandes "qu'est-ce que tu veux faire avec ça, il y a peut-être une autre solution?" et vous décris ici mon projet: (Pour ceux qui ont le courage de lire)

Je souhaite concevoir mon propre "desk PC"

(Les composants seraient dans un boîtier sous vitre, soit sous la surface du bureau, soit dans une "colonne horizontale", au fond du bureau, qui servirait aussi de rehausseur d'écrans. Dans tous les cas, il y aura cette "colonne" dans laquelle seront incrustés les ports USB, SD, Jack, des slots SATA (peut-être dans des tiroir, je ne sais pas encore...) et j'en passe. Ca fait des années que je réfléchis à ce projet, et je commence à préparer sa mise au point, étudier les contraintes pour la possière, par exemple, l'affichage d'un maximum d'infos hors écran, etcétéra, d'où ma question.)


J'aimerais le rendre le plus "ergonomique" possible, et ici, c'est pour la gestion des ports USB que je suis en recherche.

J'imagine donc un bandeau avec quelques ports USB et une carte SD, chacun muni d'un petit écran qui afficherait automatiquement pour ce port la lettre de lecteur, le nom du volume, la taille totale et celle allouée quand un périphérique est connecté.

(je pense potentiellement associer un port USB à un écran Velleman K8101 faute d'avoir trouvé son équivalent en plus petit (d'ailleurs, si certains ont des idées de références pertinentes...) connectable directement sur le PC)


Seulement, si je veux un écran par port USB, je vois difficilement possible que celui-ci récupère les infos automatiquement sur le port USB, je pense qu'il détectera en fonction de la lettre de lecteur. Et je ne veux pas changer à chaque fois la configuration des écrans pour associer la lettre...

Donc, j'ai besoin qu'un port USB ait forcément SA PROPRE LETTRE DE LECTEUR.

PAR CONTRE

Si certains d'entre vous ont en tête un système existant pouvant me donner le même résultat, même de façon différente, je suis absolument preneur.

Niveau contraintes, je veux encastrer l'écran et les ports USB sur une surface du bureau, il faut donc que le tout soit positionnable "en façade".

Amicalement,
0
brucine Messages postés 16738 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 19 septembre 2024 2 367
3 mai 2022 à 11:12
Bonjour,

La question doit pouvoir être résolue avec USBDLM, qui tourne en tâche de fond et va affecter telle lettre de lecteur selon tel critère inscrit dans son fichier ini.

En l'espèce, la manipulation sera gérée par une section de ce type:

[DriveLetters10]
DeviceID=USB\VID_067B&PID_2517
Letter=X

Et sous réserve que la section USB renferme la section correcte identifiant le port en plus de celles relatives au matériel connecté:
https://community.silabs.com/s/article/windows-usb-device-path?language=en_US

Le périphérique ainsi défini a la lettre X, les sections DriveLetters sont interprétés par priorité croissante du numéro qui les suit.

Ce qui nous intéresse est le "DeviceID" du périphérique, qui peut être obtenu par le registre mais que USBDLM a le bon goût de retourner en interface graphique via USBDriveInfo, utilitaire "livré" avec.

https://www.uwe-sieber.de/usbdlm_e.html
ou alternativement via Nirsoft USBDEVIEW:
https://www.nirsoft.net/utils/usb_devices_view.html
0
brucine Messages postés 16738 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 19 septembre 2024 2 367
3 mai 2022 à 11:17
Si les mêmes périphériques sont amenés à être branchés et débranchés d'un port quelconque, la solution toujours par USBDLM est beaucoup plus simple: il suffit d'affecter toujours via DriveLetters une lettre spécifique à une caractéristique du matériel, la plus évidente est le numéro de série unique qui persiste tant que le PC n'est pas formaté.
0
Te_Tienne Messages postés 4 Date d'inscription mardi 3 mai 2022 Statut Membre Dernière intervention 3 mai 2022 > brucine Messages postés 16738 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 19 septembre 2024
3 mai 2022 à 11:32
Eh bien, quelle réactivité!

Merci beaucoup, je vais tester cette solution rapidement, et je ferais un retour dès que ce sera fait

Encore merci!
0
Te_Tienne Messages postés 4 Date d'inscription mardi 3 mai 2022 Statut Membre Dernière intervention 3 mai 2022 > brucine Messages postés 16738 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 19 septembre 2024
3 mai 2022 à 12:03
Re:
Je viens de tester, et en effet, USBDLM me propose bien le champ USB PORT NAME qui est exactement ce que je recherchais! :D

Je vais maintenant regarder à bidouiller pour gérer l'attribution de la lettre en fonction de ce paramètre!

Encore merci!
0
brucine Messages postés 16738 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 19 septembre 2024 2 367 > Te_Tienne Messages postés 4 Date d'inscription mardi 3 mai 2022 Statut Membre Dernière intervention 3 mai 2022
3 mai 2022 à 12:55
Comme plus on est de fous, plus on s'amuse, j'ai testé successivement avec 2 clés USB non privilégiée par USBDLM et qui prennent donc la première lettre libre (N) où qu'elles soient branchées.

Les 2 seuls critères variables:

Kingston port 1
USB LocationIds = PCIROOT(0)#PCI(1400)#USBROOT(0)#USB(1)#USB(2), ACPI(_SB_)#ACPI(PCI0)#ACPI(XHC_)#ACPI(RHUB)#ACPI(HS01)#USB(2)

USB Port Name old = 1-1-2

Kingston port 2
USB LocationIds = PCIROOT(0)#PCI(1400)#USBROOT(0)#USB(14), ACPI(_SB_)#ACPI(PCI0)#ACPI(XHC_)#ACPI(RHUB)#ACPI(SS02)

USB Port Name old = 1-14

Philips port 2
USB LocationIds = PCIROOT(0)#PCI(1400)#USBROOT(0)#USB(2), ACPI(_SB_)#ACPI(PCI0)#ACPI(XHC_)#ACPI(RHUB)#ACPI(HS02)

USB Port Name old = 1-2

Philips port 1
USB LocationIds = PCIROOT(0)#PCI(1400)#USBROOT(0)#USB(1)#USB(2), ACPI(_SB_)#ACPI(PCI0)#ACPI(XHC_)#ACPI(RHUB)#ACPI(HS01)#USB(2)

USB Port Name old = 1-1-2

Si on ne doit pas affecter une lettre propre à un périphérique (ça c'est simple et ça marche toujours) mais à un port USB, il ne semble y avoir de caractéristiques spécifiques aux ports que partielles, ce qui signifie qu'il faudrait écrire dans USBLM une chaîne avec des caractères génériques et la tester.
0