[c++] droit des fichier

droit des fichier [c++] - C++ - Programmation

Marsh Posté le 12-02-2003 à 09:31:33    

Bonjour,
Je voudrais savoir comment dans un programme c/c++ on peut récupérer et définir les droits d'un fichier. L'idéal serait une solution portable aussi bien sous windows que sous linux. Ou éventuellement une solution pour chaque.
 
En fait c'est +/- pour faire une copie de fichier. Pour le moment ca marche bien, mais le plus gros problème vient des executables. En effet, pour pouvoir executer un programme il faut qu'il ait certains droits. Le problème c'est quand on créer un fichier, par défaut il ne les a pas.
 
J'espère que je ne me suis pas trop embrouillé ;-)


Message édité par elrond le 12-02-2003 à 09:32:49
Reply

Marsh Posté le 12-02-2003 à 09:31:33   

Reply

Marsh Posté le 12-02-2003 à 09:33:30    

Il y a des droits sous Windows?
en C pur:
 

Code :
  1. int open(const char *pathname, int flags, mode_t mode);
  2.        int creat(const char *pathname, mode_t mode);


sinon, il y a aussi  
 

Code :
  1. int umask(int mask);


Message édité par western le 12-02-2003 à 09:38:14
Reply

Marsh Posté le 12-02-2003 à 10:40:27    

western a écrit :

Il y a des droits sous Windows?


Ben sous windows XP oui :hap:
 
Merci pour ton aide, je vais essayé...

Reply

Marsh Posté le 12-02-2003 à 10:48:44    

sous unix:
 

Code :
  1. int stat(const char *file_name, struct stat *buf);
  2. int fstat(int filedes, struct stat *buf);
  3. int lstat(const char *file_name, struct stat *buf);


mais ca m'étonnerai que tu trouves quelque chose de portable, chaque fs ayant son système de gestion des droits.

Reply

Marsh Posté le 12-02-2003 à 10:54:26    

Il y a des choses qui se ressemble.
Ce qui m'intéresse le plus c'est celui de l'executable et la il y existe aussi bien sous windows que sous unix.
 
J'essaierai d'avoir le maximum de correspondance entre les deux et c'est pas trop grave s'il y a des comportements un peu différents.
 
Je vais voir ce que je peux faire. Merci

Reply

Marsh Posté le 12-02-2003 à 10:57:34    

Elrond a écrit :

Il y a des choses qui se ressemble.
Ce qui m'intéresse le plus c'est celui de l'executable et la il y existe aussi bien sous windows que sous unix.
 
J'essaierai d'avoir le maximum de correspondance entre les deux et c'est pas trop grave s'il y a des comportements un peu différents.
 
Je vais voir ce que je peux faire. Merci


il y a des droits similaires, mais ils ne sont pas geres de la meme maniere

Reply

Marsh Posté le 12-02-2003 à 11:40:53    

gloop a écrit :

sous unix:
 

Code :
  1. int stat(const char *file_name, struct stat *buf);
  2. int fstat(int filedes, struct stat *buf);
  3. int lstat(const char *file_name, struct stat *buf);


mais ca m'étonnerai que tu trouves quelque chose de portable, chaque fs ayant son système de gestion des droits.


*stat ne permettent pas de créer ...

Reply

Marsh Posté le 12-02-2003 à 12:02:02    

western a écrit :


*stat ne permettent pas de créer ...


il veut pas créer un fichier, il veut récuperer les droits des fichiers.

Reply

Marsh Posté le 12-02-2003 à 12:10:39    

Les deux me serviront peut etre.
Je m'y pencherai dessus un peu plus tard. La je suis sur une autre partie de mon projet.
 
Encore merci :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed