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

C++ Discussion :

Scanner un cd/dvd


Sujet :

C++

  1. #1
    Membre averti
    Inscrit en
    Mai 2007
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Mai 2007
    Messages : 16
    Par défaut Scanner un cd/dvd
    Bonjour,
    voilà je voudrais scanner un DVD / CD pour intégrer ces fichiers à ma base de données. Il s'agit de fichier médias.
    Je ne sais pas vraiment comment faire. Pouvez-vous m'aider?
    Merci.

  2. #2
    Membre éprouvé
    Inscrit en
    Mai 2007
    Messages
    157
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2007
    Messages : 157
    Par défaut
    Scanner un dvd ou cd est exactement la meme chose que determiner les fichiers presents sur ton disque dur...

    Il faut a ce moment la faire un filtre sur les differents fichiers trouvés et hop, le tour est joué.

  3. #3
    Membre averti
    Inscrit en
    Mai 2007
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Mai 2007
    Messages : 16
    Par défaut
    Merci.
    Y a t-il des fonctions pour connaitre l'arborescence d'un support ?
    Désolé suis débutant...

  4. #4
    Membre éprouvé
    Inscrit en
    Mai 2007
    Messages
    157
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2007
    Messages : 157
    Par défaut
    Voici un petit exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    #include <iostream>
    #include <iomanip>
    #include <time.h>
    #include <windows.h>
     
     
    void AfficherListeFichiers (char Dossier[MAX_PATH])
    {
    	HANDLE hFind;
    	WIN32_FIND_DATA FindData;
     
    	// Change de dossier
    	SetCurrentDirectory (Dossier);
     
    	// Début de la recherche
    	hFind=FindFirstFile ("*.*", &FindData);
    	if (hFind!=INVALID_HANDLE_VALUE)
    	{
    		// Si le fichier trouvé n'est pas un dossier mais bien un fichier, on affiche son nom
    		if (!(FindData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY))
    		{
    			MessageBox (NULL, FindData.cFileName, "Fichier", MB_ICONINFORMATION);
    		}
    		// Fichiers suivants
    		while (FindNextFile (hFind, &FindData))
    		{
    			if (!(FindData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY))
    			{
    				MessageBox (NULL, FindData.cFileName, "Fichier", MB_ICONINFORMATION);
    			}
    		}
    	}
    	// Fin de la recherche
    	FindClose (hFind);
    }[
    int main(int argc, char *argv[])
    { 
    	char path[MAX_PATH] = "c:";
    	AfficherListeFichiers(path);
    }
    A toi donc maintenant de manier avec soin ces methodes pour obtenir ton résultat. Bon courage

  5. #5
    Membre averti
    Inscrit en
    Mai 2007
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Mai 2007
    Messages : 16
    Par défaut
    Bonjour,
    c'est super merci beaucoup.

  6. #6
    Membre Expert
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Par défaut
    Personnellement, je ferai ça avec Boost.FileSystem. C'est portable, et ça marche très bien...
    (cf tuto Miles)

  7. #7
    Alp
    Alp est déconnecté
    Expert confirmé

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Par défaut
    +1.

    Boost.Filesystem permet de parcourir des dossiers comme si on parcourait un conteneur standard : avec des itérateurs. C'est bien plus pratique, et à mon avis niveau performance on doit pas s'en sortir trop mal.

  8. #8
    Membre averti
    Inscrit en
    Mai 2007
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Mai 2007
    Messages : 16
    Par défaut
    Merci pour ces informations que j'ai mis en oeuvre est c'est nickel.
    Je souhaite maintenant aller plus loin.
    Je voudrais extraire certaines informations des fichiers lus, notamment sa taille, éventuellement si c'est un fichier audio ou vidéo le débit, le fourcc etc.
    Je souhaite aussi connaitre le label du support contenant ces fichiers notamment pour les supports amovibles style DVD.
    Je fais actuellement des recherches là dessus mais si vous pouvez (encore je sais ) me donner un petit coup de pouce.

    Vous êtes Merci.

  9. #9
    Membre averti
    Inscrit en
    Mai 2007
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Mai 2007
    Messages : 16
    Par défaut
    Après recherche je sais comment connaitre la taille des fichiers ainsi que le nom de volume sur lequel est stocké le fichier. Quelqu'un a t-il un tuyau pour extraire les données meta des fichiers vidéos & audio style le débit, la durée le fourcc ?

  10. #10
    Membre Expert
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Par défaut
    Salut,

    Tu trouveras tout ce que tu veux, comme Alp et moi te l'avons déjà dit, dans la bibliothèque Boost( La partie filesystem ).
    -> http://miles.developpez.com/tutoriel...st/filesystem/
    -> Boost

    Pour la taille des fichiers, il y a la fonction file_size de Boost!
    Une autre implémentation serait d'ouvrir la fichier en question en mode binaire et de calculer sa taille comme dans l'exemple de la

    Mais avec Boost, tu peux tout faire... (ou presque, n'éxagérons rien )

Discussions similaires

  1. Scanner un DVD contenant des packages
    Par JavaAcro dans le forum SUSE
    Réponses: 2
    Dernier message: 07/10/2006, 10h42
  2. [C#] Piloter un scanner
    Par freegreg dans le forum Windows Forms
    Réponses: 9
    Dernier message: 12/04/2005, 12h34
  3. [Video] graver un divx sur un dvd
    Par Mut dans le forum Vidéo
    Réponses: 7
    Dernier message: 01/12/2003, 15h19
  4. Réponses: 10
    Dernier message: 10/10/2003, 14h25
  5. Scanner des mails et récupérer le fichier attaché
    Par delphim dans le forum Composants VCL
    Réponses: 2
    Dernier message: 24/04/2003, 09h35

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