Accéder à un fichier ressource

hautparleur Messages postés 207 Date d'inscription   Statut Membre Dernière intervention   -  
[Dal] Messages postés 6122 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
j'ai besoin d'accéder à un fichier ressource (RCDATA dans un .rc), pour le copier dans le dossier temporaire et l'utiliser plus tard.
J'ai essayé le chemin ":/ressource.wav" avec fopen mais ça ne fonctionne pas.
Il y a bien un moyen? Une fonction, un chemin d'accès...

Merci beaucoup!

1 réponse

  1. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
     
    Bonjour,
    Si tu souhaites copier le contenu d'un fichier dans un autre, il faut te la créer tout seul : une boucle for, tu lis depuis le fichier et colle dans l'autre.
    0
    1. hautparleur Messages postés 207 Date d'inscription   Statut Membre Dernière intervention   15
       
      En fait mon code est compilé dans une DLL, avec un fichier .c et des ressources, dans le code il y a une fonction qui sera appelée par un programme externe.
      Le problème c'est que cette fonction doit pouvoir accéder au fichier wav qui est lié dans le programme, pour copier je connais la fonction.
      0
    2. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
       
      Sans code, ça va être dur de t'aider.
      Tu souhaites y accéder comment ? En lecture ?
      0
    3. hautparleur Messages postés 207 Date d'inscription   Statut Membre Dernière intervention   15
       
      int DllExport extract()
      {
      FILE* lfile = NULL;
      lfile = fopen(":/nom_ressource","r");

      FILE* dfile = NULL;
      dfile = fopen("fichier.wav","w");

      do{
      fputc(fgetc(lfile), dfile);
      }while(!feof(lfile));

      fclose(lfile);
      fclose(dfile);
      return 0;
      }
      0
    4. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
       
      lfile = fopen(":/nom_ressource","r");
      Tu es sur windows ou Linux ?
      Si tu es sur Windows, utilise plutôt des \\. Sinon il manque le lecteur. Exemple : C:\\nom_ressource.
      0
    5. hautparleur Messages postés 207 Date d'inscription   Statut Membre Dernière intervention   15
       
      le programme est sous windows
      0