[..]Ecriture lecture

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
jcaspar
Niveau 7
Niveau 7
Messages : 449
Enregistré le : mar. 23 sept. 2008 17:58
Status : Hors ligne

[..]Ecriture lecture

#1

Message par jcaspar »

B :D onjour à tous !

Je souhaiterais pouvoir tester si un repertoire est accessible en
lecture et en ecriture ?

Cela est il possible avec autoit ?

Merci d'avance pour vos idées et suggestions :P

Jean Marc
Avatar du membre
jumby
Niveau 5
Niveau 5
Messages : 118
Enregistré le : jeu. 12 juin 2008 17:50
Status : Hors ligne

Re: [..]Ecriture lecture

#2

Message par jumby »

Bonjour,

Je te propose d'utiliser filegetattrib, si cette fonction retourne la valeur "R", le répertoire est "READONLY" ce qui sous entend que l'on ne peut pas écrire dans ce répertoire. Si cette fonction retourne la valeur "D", le chemin indiqué correspond à celui d'un répertoire.

Voici le détail :
"R" = READONLY
"A" = ARCHIVE
"S" = SYSTEM
"H" = HIDDEN
"N" = NORMAL
"D" = DIRECTORY
"O" = OFFLINE
"C" = COMPRESSED (NTFS compression, not ZIP compression)
"T" = TEMPORARY

On peut imaginer le code suivant :

Code : Tout sélectionner

$testattribdir  = FileGetAttrib ( "dossiertest" )

if $testattribdir = "RD" Then
MsgBox(0, "Readonly", "Le répertoire est accessible en lecture, mais n'est pas accessible en écriture")
EndIf

if $testattribdir = "D" Then
MsgBox(0, "Readonly", "Le répertoire est accessible en lecture et écriture")
EndIf
 
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11816
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..]Ecriture lecture

#3

Message par Tlem »

Attention ... La solution de jumby est presque bonne, mais présente un gros défaut.
Si le répertoire à un autre attribut que R ou D alors la condition n'est plus bonne.

En fait, pour tester l'attribut d'un fichier ou d'un dossier, il faut regarder dans la chaîne retournée par FileGetAttrib si ce dernier est présent grace à la fonction StringInStr (un seul attribut à la fois).
Regardez l'exemple dans la documentation de la commande FileGetAttrib.
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é".
Répondre