IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Discussion :

qq' expl. rudimentaires de CreateFile ?


Sujet :

Windows

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2004
    Messages : 19
    Points : 15
    Points
    15
    Par défaut qq' expl. rudimentaires de CreateFile ?
    Bonjour !

    Je voudrais obtenir des exemples simples de l'utilisation des param. dwDesiredAccess et dwShareMode de la commande CreateFile.

    En d'autres termes, je ne saisis pas comment leur ASSIGNER des valeurs telles que monfichier.txt soit en lecture partagée ou non.

    De même, pour le paramètre lpSecurityAttributes, la valeur NULL octroit une structure 'sécurité' par défaut...
    ...et comment (avec quelle valeur pour ce param.) puis-je stipuler une autre structure de sécurité (contenant d'autres valeurs) que celle par défaut ?

    merci à tous et bon WE.

    Juan.

  2. #2
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2003
    Messages
    7 939
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 7 939
    Points : 59 417
    Points
    59 417
    Billets dans le blog
    2
    Par défaut
    Bonjour !

    Tu devrais trouver toutes les explications (ainsi que quelques exemples) sur MSDN :
    http://msdn.microsoft.com/library/de...ning_files.asp
    Règles du forum
    Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
    Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
    Mes tutoriels et sources Pascal

    Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
    La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2004
    Messages : 19
    Points : 15
    Points
    15
    Par défaut qq' expl. rudimentaires sur CreateFile...
    merci pour ton aide...

    mais...
    j'avais déjà visité cette rubrique avant de poster ma requète, et je ne comprends pas cette info de MS.

    En fait, je m'attendais plutôt en lisant cette info à entrevoir un caractère dichotomique à ces param., du genre :

    Param : true/false

    ou encore :

    generic_read/generic_no_read
    (ou que sais-je à ce stade-ci... excuses mon enbrouillement ! )

    c'est bien là que je cale actuellement, et c'est pour ça que je voudrais VOIR un exemple d'utilisation dans qq' cas différents...

    si tu peux m'en faire voir...

    à bientôt,
    amicalement,

    Juan.

  4. #4
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 751
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 751
    Points : 10 670
    Points
    10 670
    Billets dans le blog
    3
    Par défaut
    Ce sont des flags qu'il faut combiner via des OU binaires.
    GENERIC_READ | GENERIC_WRITE
    Pour une lecture partagée, quelque chose comme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    CreateFile(TEXT("myfile.txt"),    // file to open
                       GENERIC_READ,          // open for reading
                       FILE_SHARE_READ,       // share for reading
                       NULL,                  // default security
                       OPEN_EXISTING,         // existing file only
                       FILE_ATTRIBUTE_NORMAL, // normal file
                       NULL);
    1° exemple du lien donné par Alcatîz.
    Que veux-tu exactement ?

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2004
    Messages : 19
    Points : 15
    Points
    15
    Par défaut
    Merci pour ce complément d'explication..

    en fait, mon application crée (CreateFile) MonFichier.exe, pour le lancer ensuite ;
    après quoi, elle le détruit (DeleteFile).

    Je me suis aperçu qu'on peut facilement faire une copie de MonFichier.exe pendant le temps qu'il est chargé en mémoire.
    Ce que je voudrais, c'est protéger MonFichier.exe de telle sorte qu'on ne puisse en faire de copie alors qu'il est chargé en mémoire.
    Et donc, je dois connaître les valeurs à attribuer aux paramètres de CreateFile afin de le protéger.
    Et là... j'hésite entre les paramètres dwShareMode, lpSecurityAttributes, ...voire utiliser une fonction ultérieure telle que SetFileSecurity, LockFile...

    Je crois que j'ai bien posé mon problème cette fois...

    Voilà... pas facile quand on démarre avec HLA, MASM et Win32 en même temps... il faut un délai pour s'y retrouver..!

    merci pour votre aide et à bientôt,

    Juan.

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2004
    Messages : 19
    Points : 15
    Points
    15
    Par défaut
    J'ai enfin trouvé la réponse à ma question sur le site de R. HYDE - HLA qui fournit un lien vers le fichier win32.hlp.zip.
    On y trouve une explication complète de CreateFile (et bien plus claire que sur MSDN/...), entre autres...

    merci à tous et à bientôt...

    Juan.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Probleme CreateFile, ReadFile et WriteFile Windows98
    Par Albenejean dans le forum Windows
    Réponses: 6
    Dernier message: 27/10/2005, 18h47
  2. Difference entre CFile et CreateFile et fopen
    Par barthelv dans le forum MFC
    Réponses: 7
    Dernier message: 22/10/2005, 11h02
  3. CreateFile: erreur "privileged instruction"
    Par Magus (Dave) dans le forum MFC
    Réponses: 5
    Dernier message: 24/08/2004, 21h38
  4. Réponses: 3
    Dernier message: 23/06/2004, 21h17
  5. CreateFile
    Par PEM dans le forum C++Builder
    Réponses: 2
    Dernier message: 31/07/2002, 15h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo