[R] Comment récupérer la lettre d'un lecteur (Clé USB) ?

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
elminio
Niveau 3
Niveau 3
Messages : 34
Enregistré le : mar. 09 févr. 2010 15:24
Status : Hors ligne

[R] Comment récupérer la lettre d'un lecteur (Clé USB) ?

#1

Message par elminio »

Bonjour à tous,
Sur le forum dans la partie exemple, j'ai trouvé ce code qui permet de récupérer la lettre d'un lecteur de disque

Code : Tout sélectionner

; Récuperation de la lettre de lecteur du disque de sauvegarde
$nombre_disques = DriveGetDrive( "all" )
For $i = 1 to $nombre_disques[0]
    $var = DriveGetLabel($nombre_disques[$i])
    If $var = $nom_disque Then
        $repertoire_destination = $nombre_disques[$i]
    EndIf
Peut on adapter ce code afin de connaitre la lettre du lecteur de la clé usb à son insertion ?
Cdt,
Elminio
Modifié en dernier par elminio le ven. 05 mars 2010 14:30, modifié 3 fois.
Serge63
Niveau 4
Niveau 4
Messages : 71
Enregistré le : lun. 22 juin 2009 14:54
Localisation : Clermont-ferrand
Status : Hors ligne

Re: [..] Comment récupérer la lettre d'un lecteur (Clé USB) ?

#2

Message par Serge63 »

voici une adaptation du code qui permet de voir la lettre de toutes les clés usb qui sont connectées :

Code : Tout sélectionner

$var = DriveGetDrive( "REMOVABLE" )
If NOT @error Then
    For $i = 1 to $var[0]
        MsgBox(4096,"Drive " & $i, $var[$i])
    Next
EndIf
 
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11798
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Comment récupérer la lettre d'un lecteur (Clé USB) ?

#3

Message par Tlem »

Ce sera plutôt la détection d'un périphérique de masse USB.
Si vous voulez déterminer si c'est une clé USB ou un disque dur, vous pouvez contrôler par rapport à la taille, mais l'écart commence à diminuer de plus en plus. ;)
► Afficher le texte
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
elminio
Niveau 3
Niveau 3
Messages : 34
Enregistré le : mar. 09 févr. 2010 15:24
Status : Hors ligne

Re: [..] Comment récupérer la lettre d'un lecteur (Clé USB) ?

#4

Message par elminio »

Bonjour,
En fait je dois ajouter ce code dans un programme.
Ce programme à pour but de lancer un menu à l'insertion de la clé usb afin de proposer un choix entre :
1 - le transfert de donnée vers la clé USB
2 - le transfert de donnée de la clé USB vers le PC
Sachant que dans les deux cas il doit simplement transférer les données modifiées.
Pouvez vous me détailler le fonctionnement de votre code ?
Cdt,
Elminio
Serge63
Niveau 4
Niveau 4
Messages : 71
Enregistré le : lun. 22 juin 2009 14:54
Localisation : Clermont-ferrand
Status : Hors ligne

Re: [..] Comment récupérer la lettre d'un lecteur (Clé USB) ?

#5

Message par Serge63 »

si tu veux te faciliter la vie, tu peux utiliser ce petit soft qui fonctionne très bien pour synchroniser des dossiers, quel que soit leur emplacement.

il est portable, configurable et léger.

http://www.clubic.com/telecharger-fiche ... nizer.html
Eliferion
Niveau 1
Niveau 1
Messages : 3
Enregistré le : jeu. 05 juin 2008 14:50
Status : Hors ligne

Re: [..] Comment récupérer la lettre d'un lecteur (Clé USB) ?

#6

Message par Eliferion »

Bonjour elminio,

Je suis d'accord avec Serge63, synchronizer est certainement l'un des meilleurs si ce n'est le meilleur.

Cependant je te conseille d'aller à l'adresse où timmalos présente un script de Kairos nommé File Manager:
http://www.autoitscript.fr/forum/viewt ... 1&start=0

Tu y trouveras tout ce qu'il te faut.


Sinon je me permet de préciser le script de Tlem :
C'est un script avec une requête en WMI, largement utilisé en administration Windows et certaines applications.
L'intérêt du WMi est entre autre son interaction avec le système et le matériel local et distant.

Ici le script détecte tout matériel USB ajouté ou supprimé pendant le l'activation du script et retourne le lecteur (DevId) sur lequel il se lance.


Pour ma part j'utilise cette astuce :

Pour ce qui est du lecteur USB ou Disque dur externe, tu t'appuies sur le nom que tu attribue à ton lecteur.

Code : Tout sélectionner

$NomMonLecteurUSB = "Disque externe"

$var = DriveGetDrive( "all" )
If NOT @error Then
    For $i = 1 to $var[0]
        _testmonlecteur()
    Next
EndIf

Func _testmonlecteur()
    $Lecteur = $var[$i]
    $nom = StringLower(DriveGetLabel( $Lecteur ))
    if $nom = $NomMonLecteurUSB Then
         msgbox ("","Identification de mon lecteur"," C'est bien mon disque ou clef USB : " & $nom & @crlf & "                     trouvé sur le Lecteur " & $var[$i])
    ;~   _LanceSynchro() ; ici je créé ma fonction qui lance ma synchro ou toute autre action
     Else
;~       msgbox ("","Identification de mon lecteur"," C'est pas mon disque ou clef USB")
    EndIf
EndFunc
 
On peut tout aussi bien s'appuyer sur la présence d'un fichier ou d'un répertoire en particulier.
elminio
Niveau 3
Niveau 3
Messages : 34
Enregistré le : mar. 09 févr. 2010 15:24
Status : Hors ligne

Re: [..] Comment récupérer la lettre d'un lecteur (Clé USB) ?

#7

Message par elminio »

1 - le transfert de donnée vers la clé USB
2 - le transfert de donnée de la clé USB vers le PC
J'ai oublié quelques infos, il y a un transfert du PC1 vers la clé USB et ensuite il y a un second transfert de la clé USB vers le PC2
Ce programme doit me permettre la mise à jour antivirus d'un pc qui n'a pas d'accès réseaux.
Avec le moins de manipulation possible car la personne débute en informatique.
Je vais tester le programme "synchroniser" et vos codes.
elminio
Niveau 3
Niveau 3
Messages : 34
Enregistré le : mar. 09 févr. 2010 15:24
Status : Hors ligne

Re: [..] Comment récupérer la lettre d'un lecteur (Clé USB) ?

#8

Message par elminio »

Merci serge63 mais synchronizer me convient pas.
Par contre j'ai revu m'a copie :
le script doit réaliser une détection de la lettre du lecteur,
puis télécharger un fichier zip situé sur une adresse http,
décompressé ce fichier dans un répertoire sur la clé usb
et enfin déconnecter la clé du port usb.
Cdt,
Elminio
elminio
Niveau 3
Niveau 3
Messages : 34
Enregistré le : mar. 09 févr. 2010 15:24
Status : Hors ligne

Re: [..] Comment récupérer la lettre d'un lecteur (Clé USB) ?

#9

Message par elminio »

Comment faire pour remplacer C:\ par la variable ?

Code : Tout sélectionner

$var = DriveGetDrive( "removable" )
If NOT @error Then
    For $i = 1 to $var[0]
        InetGet("http://www.kaspersky.com/fr/avupdates?chapter=146669701&open=av-i386-weekly.zip", "[b]C:\[/b]av-i386-weekly.zip")
    Next
EndIf
 
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11798
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Comment récupérer la lettre d'un lecteur (Clé USB) ?

#10

Message par Tlem »

Code : Tout sélectionner

$var[$i] & "\av-i386-weekly.zip"
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
elminio
Niveau 3
Niveau 3
Messages : 34
Enregistré le : mar. 09 févr. 2010 15:24
Status : Hors ligne

Re: [R] Comment récupérer la lettre d'un lecteur (Clé USB) ?

#11

Message par elminio »

Merci Tlem pour ton aide.
elminio
Niveau 3
Niveau 3
Messages : 34
Enregistré le : mar. 09 févr. 2010 15:24
Status : Hors ligne

Re: [R] Comment récupérer la lettre d'un lecteur (Clé USB) ?

#12

Message par elminio »

Par contre en faisant un test avec MsgBox, je me suis aperçu qu'il détectait a: aussi mais il n'y pas de disquette,
pourquoi détecte t'il le lecteur a :?

Code : Tout sélectionner

$var = DriveGetDrive( "removable" )
If NOT @error Then
    For $i = 1 to $var[0]
        MsgBox(64, "Mise à Jour Antivirus", $var[$i])
    Next
EndIf
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11798
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Comment récupérer la lettre d'un lecteur (Clé USB) ?

#13

Message par Tlem »

Par ce que A est un lecteur amovible (removable).
Vous devez aussi utiliser DriveStatus() pour savoir si il y à un média dedans. ;)
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
elminio
Niveau 3
Niveau 3
Messages : 34
Enregistré le : mar. 09 févr. 2010 15:24
Status : Hors ligne

Re: [..] Comment récupérer la lettre d'un lecteur (Clé USB) ?

#14

Message par elminio »

J'ai intégré DriveStatus() est plus de problème,
Merci.
Répondre