Page 1 sur 1

[R] Détéction partion de donnée

Posté : dim. 07 juin 2009 12:08
par Julien
Bonjour,

Je suis en train de faire un petit script qui va se lancer au démarrage de la session utilisateurs afin de configurer le profil. Je vais déplacer le dossier Mes Documents.

Lors d'une réinstallation de Windows (ici xp) si il y'a deux partition il nomme généralement la deuxième D: ( a condition d'avoir installé Windows sur le C:\).

Comment avec Autoit je peux faire pour détecter le D:\ et être sur que c'est bien une partition et non pas un CD-Rom.

Je vais plus loin. J'ai déjà ça :

Code : Tout sélectionner

If DriveGetType("D:\") <> "CDROM" Then
    DriveSetLabel("D:\", "Données")
EndIf
Mais si la condition n'est pas vrai, mon if sera ignoré. comment détecter en fait la deuxième partition ?

Existe t'il un identifiant unique ? (l'installation ne concerne qu'un seul poste et ce n'est pas pour diffusion)

Merci

Re: [...] Détéction partion de donnée

Posté : dim. 07 juin 2009 14:23
par Tlem
Selon toutes vraisemblance, vous aurez dans cette machine un seul disque dur avec une partition, deux partitions voir plus...

Dans ce cas, la commande DriveGetDrive("FIXED") vous renverra un tableau avec le nombre et le nom des lecteurs fixes.
Pas la peine de tester si c'est un CDRom ou autre donc. ;)

Re: [...] Détéction partion de donnée

Posté : dim. 07 juin 2009 15:11
par Julien
Merci pour votre réponse.

Cependant, j'était justement en train de faire des test de ce coté la mais si par exemple lors de mon installation j'ai oublié d'enlever une carte SD qui ferais 30Go (c'est pour l'exemple) et que par hasard lors de mon installation je me retrouve avec :

c:\ partition système
e:\ carte sd
g:\ partition data
x:\ cd-rom

ou

c:\ partition système
e:\ cd-rom
g:\ partition data
x:\ carte sd

je veux être sur de ne retenir que la partirion g:\

peux être est il possible d'identifier ma partition par un composant unique ? (DriveGetSerial)

merci.

Re: [...] Détéction partion de donnée

Posté : dim. 07 juin 2009 16:27
par Tlem
Pourquoi vous embêter avec ça, puisque je vous ai dit que l'utilisation de "FIXED" ne vous renverra que les disques physique non amovible ... :evil:

Essayez ce code, et vous verrez :

Code : Tout sélectionner

#Include <Array.au3>

$aDrive = DriveGetDrive("FIXED")
_ArrayDisplay($aDrive,"Liste des lecteurs physique")
 

Re: [...] Détéction partion de donnée

Posté : dim. 07 juin 2009 17:24
par Julien
:oops: pardon!

j'ai bloqué sur le "all" de la fonction DriveGetDrive, j'ai complètement pas compris l'intérêt de "FIXED". Maintenant c'est fait.

Merci pour votre aide.