AccueilAccueil  FAQFAQ  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  
Le Deal du moment : -28%
-28% Machine à café avec broyeur ...
Voir le deal
229.99 €

 

 [RESOLU]Savoir si un fichier est en lecture seule

Aller en bas 
AuteurMessage
Invité
Invité




[RESOLU]Savoir si un fichier est en lecture seule Empty
MessageSujet: [RESOLU]Savoir si un fichier est en lecture seule   [RESOLU]Savoir si un fichier est en lecture seule EmptyJeu 26 Avr 2012 - 15:00

Voilà j'ai un problème et impossible de trouver une solution.
Je voudrais savoir si un fichier est en lecture seule, car si j'essaye d'ouvrir un fichier ne lecture seule avec la fonction file_text_open_append(f) ou avec la fonction file_text_open_write(file), Game Maker m'affiche un joli message d'erreur qui me dit que le fichier ne peut pas être ouvert en mode écriture (ce qui est normal car le fichier est en lecture seule).

Je veut savoir si le fichier est lecture seule car ainsi je peut annuler l'ouverture du fichier plutôt que de laisser le message d'erreur de GM.

J'avais cru avoir trouvé la solution avec la fonction:
Citation :
file_find_first(mask,attr) Retourne le nom du premier fichier satisfaisant le filtre mask et les attributs attr. Une chaîne vide sera retournée si la recherche n'a pas abouti. Le filtre mask peut contenir le nom d'un chemin mais aussi des caractères jokers comme par exemple 'C:\temp\*.doc'. Les attributs vous permettent de fournir les fichiers supplémentaires que vous souhaitez voir (les fichiers 'normaux' seront toujours retournés s'ils satisfont le masque). Vous pouvez utiliser les constantes suivantes afin de rechercher le type de fichiers souhaité :

fa_readonly fichiers en lecture seule
fa_hidden fichiers cachés
fa_sysfile fichiers systèmes
fa_volumeid fichier d'id de volumes
fa_directory répertoires
fa_archive fichiers archive
s

J'ai donc écrit cela pour savoir si le fichier fichier.txt est en lecture seule:
Code:
    //lectures seule ?
    etat=file_find_first("fichier.txt",fa_readonly);
    if etat!="" {show_message("Probleme !");; file_find_close(); exit; }
    file_find_close();

Problème ! Que le fichier soit en lecture seule ou non, le message "Probleme !" est affiché.
Mais voilà, dans l'explication de la fonction il y écrit <<les fichiers 'normaux' seront toujours retournés s'ils satisfont le masque>>.
Or, à quoi servent les attributs si même les fichiers qui ne satisfont pas cette attribut sont comme même retournés ?


J'avais penser pour pallier se problème d'utiliser d'utiliser un fichier batch (un fichier contenant des commandes MS-DOS) pour retirer la lecture seule. Si j'utilise cette solution, le fichier batch contiendras:
Code:
attrib -R fichier.txt
exit
Et j’exécuterais le fichier batch avec la fonction execute_program("FichierBatch.cmd","",true).
Mais le problème de cette solution est que ce n'est pas très propre (une boite MS-DOS s'afficheras à l'écran) et qu'il me seras impossible de vérifier si l'opération a réussie.

Merci d'avance pour les solutions que vous pourriez m'apporter. Wink


Dernière édition par NVR le Jeu 26 Avr 2012 - 15:24, édité 1 fois
Revenir en haut Aller en bas
Caly
Utilisateur confirmé: Rang ****
Caly


Messages : 1285
Localisation : Haute Normandie
Projet Actuel : Capturer, apprivoiser et dresser des Pokémons sauvages pour faire des spectacles de rue et en faire mon métier.

[RESOLU]Savoir si un fichier est en lecture seule Empty
MessageSujet: Re: [RESOLU]Savoir si un fichier est en lecture seule   [RESOLU]Savoir si un fichier est en lecture seule EmptyJeu 26 Avr 2012 - 15:07

Salut.

Code:
if( file_attributes('fichier.txt', fa_readonly) ){
    show_message("Probleme !");
    exit;
}
Revenir en haut Aller en bas
Invité
Invité




[RESOLU]Savoir si un fichier est en lecture seule Empty
MessageSujet: Re: [RESOLU]Savoir si un fichier est en lecture seule   [RESOLU]Savoir si un fichier est en lecture seule EmptyJeu 26 Avr 2012 - 15:24

Merci Caly, c'est exactement la fonction que je cherchais.
J'était tellement focalisé sur la fonction file_find_first() que je n'ai vu l'autre fonction.

Encore merci happy1
Revenir en haut Aller en bas
Caly
Utilisateur confirmé: Rang ****
Caly


Messages : 1285
Localisation : Haute Normandie
Projet Actuel : Capturer, apprivoiser et dresser des Pokémons sauvages pour faire des spectacles de rue et en faire mon métier.

[RESOLU]Savoir si un fichier est en lecture seule Empty
MessageSujet: Re: [RESOLU]Savoir si un fichier est en lecture seule   [RESOLU]Savoir si un fichier est en lecture seule EmptyJeu 26 Avr 2012 - 15:26

De rien, ça arrive à tout de monde de chercher compliqué (sauf à Oni, je ne sais pas comment il fait lui -_- ) alors qu'on peut faire simple.
Revenir en haut Aller en bas
Contenu sponsorisé





[RESOLU]Savoir si un fichier est en lecture seule Empty
MessageSujet: Re: [RESOLU]Savoir si un fichier est en lecture seule   [RESOLU]Savoir si un fichier est en lecture seule Empty

Revenir en haut Aller en bas
 
[RESOLU]Savoir si un fichier est en lecture seule
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Lecture fichier CSV (bis)
» Problème de lecture dans un fichier
» Lecture d'un fichier flash sans extension
» Problème avec la lecture de fichier texte externe
» Problème avec la lecture de fichier texte externe(2)

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Entraide confirmés-
Sauter vers: