Archivage de fichiers photos - VB/VBA/VBS - Programmation
Marsh Posté le 04-06-2003 à 01:12:10
oui, c'est possible ! comme une recette de cuisine on débute par le début et ont se pose des questions, la seule que je trouve, c'est comment va savoir que les derniers fichiers ont été copier dans le répertoire X ? on n'y reviendras.
1/ Détecter d'abord le lecteur de CD ! Chaque machine à sa propre lettre, il faut y penser !
2/ créer ton répertoire
3/ travailler avec la Base de registre !
4/ vérifier que tes dossier y sont toujours aprés chaque ouverture de ton programme (en cas d'éfacement tu fais comment ?) t'es dans la **** !
-----------------
I/ Lecteur de Cd
-----------------
Rien de bien compliqué, il faut utiliser une fonctions propres à windows, à savoir les API windows. Voici le code à modifier et à comprendre en fonction de ce que tu veux faire. Une fois la lettre trouver, tu la concaquetane, à au reste du chemin, de ton CD...(Cf chap 5 ou 6)
Code :
|
-------------------------
II/ Création des dossiers
-------------------------
Tu peux toujours le faire avec un API windows, mais je sais que Vb en n'as une par défaut, j'ai oublié le name ! sinon, c'est celle-ci. Tu demande le nom dans une inputbox. Tu devras contrôler la validité du nom en controlant chacun des caractères de sortie, cherche LEN dans l'aide, tu auras toutes les fonctions pour traiter les chaines de caractères.
Code :
|
Code :
|
place ses élèments suivant, indispensable au bon fonctionement, de la création d'un dossier, dans un module : ajouter > module
Code :
|
Voilà; à peux prés le code. D'allieur dans le code, il a procédé, si tu as fais attention, il a utilse Inputboc...inspire t'en.
-----------------------
III / BASE DE REGISTRE
------------------------
L'inconveinient des foncions de VB pour le registre, c'est qu'elle agissent uniquement sous une clé : VBA and VB setting...emmerdant ! Pourquoi, le registre ? c'est le seul endroit qui garde l'info, aprés la fermeture d'un programme.Je ne vais pas te faire le chapeller de windows, dans l'aide MSN tu tape base de registre, tu as les fonction de VB pour la Bdr qui se pointe...il faut les étudier...
sinon, pour agir allieur, que sous une clé précise, va sur ce site, tu les trouveras, mais il faut un peu d'expérience dans ce domaine pour comprendre http://docvb.free.fr/api.php (tous les exemples que j'ai mis viennent de là, tous comme le nom des fonctions que je te donnerais encore)
Ce que tu devras faire, avec le registre, c'est en gros, mettre le nom du dossier dans lequel, les derniers fichiers auront été copié...et récupérer ce nom à l'ouverture, et le garder tous le long de l'ouverture, du programme via une variable PUBLIC, et gérer les autres fichiers à copier, dans d'autres dossier...
------------------------------------
IV/ VERIFIER LE CONTENU DES DOSSIERS
-------------------------------------
Il faut vérifier que les dossier que tu as créer - tu devras garder le chemin principal, dans la Bdr - y soit toujours, pour demander à l'utilisateur de récréer les dossier et le cas échant lui spécifier une erreur critiques...Encore une fois les API windows, elle renvera -1 si le dossier n'existe pas et un nombre X, qualifiant, l'attribut du dossier ou fichier (lecture seule,,ect...)
Code :
|
va voir sur le site que je t'ai donné + haut, tu as des choses à rajouter et tu as des exploications...
----------------------------------------------
V/ COMMENT TROUVER LES FICHIER IMAGE SUR LE CD ?
----------------------------------------------
Je ne sais pas comment tu va faire, car tu n'as rien dis. Mais tu devras, si tu le fais automatiquement utiliser la détection du lecteur du CD ( Cf. I) et une second fonction dans laquelle tu emboiteras la lettre en questions.
c'est l'API :
Code :
|
Comme pour l'autre va voir sur le site, tu as l'exemple qui fais trois pages. Elle est difficile d'emploi et des connaissances en particulier dans les variables dynamiques sont à connaître...elle est assez compliqué. A placer dans un module.
-----------------------
VI/ CONCLUSION
-----------------------
Je crois que j'ai tout dis . Ce que tu veux faire relève d'avoir de la bouteille en prog. et de connaître les API windows, sur le bout des doigt ou plutôt le rôle des FONCTIONS, dont tu auras besoin.
Tu en n'as pour plusieurs jours de prog sans compter la gestions d'erreur. Sans te mentir, perso, j'en n'aurais pour 3/4 jours, à temps plein, histoire d'éviter tous les bugs...
je te souhairte bonne chance... pose des questions, certains se feront un plaisir de te répondre. sinon, tu as aussi www.vbfrance.com qui pourra t'apporter de l'aide
---------------------------
En espérant avoir été clair...
@+
Cvb
Marsh Posté le 04-06-2003 à 11:28:16
Tout d'abord un grand merci pour cette réponse ultra complète MERCI
ensuite la fin de ton post me décourage un peu car je n'ai jamais touché à VB de ma vie et je penser que cela serai plus simple erf...
je vais essayer qd meme mais je ne suis pas contre un petit coup de main lol
Koi k'il en soit encore une fois grd MERCI
Marsh Posté le 04-06-2003 à 11:38:50
ecniv a écrit : Tout d'abord un grand merci pour cette réponse ultra complète MERCI |
je t'en prie ! soit pas décourager, il faut que tu prenne chaque fonction que tu les etudient dans par exemple des projets différents. Une fois compris, l'ensemble des fonctions, ou tout du moins le fonctionnement, c'est comme les LEGO, sa s'emboite ensemble dans un ordre précis...
Aprés si tu veux des coups de mains,on t'en donnera, mais on peut pas faire le programme à ta place, c'est pas possible. Pour ça on t'invite à donner le code, sur lequel t'as un problème avec tout les intervenants autour, sur quoi il agit et qui agit sur lui, histoire d'avoir toutes les pièces en main pour travailler....
Voilà, et bon courage, sa paraît dur, mais une fois fais du rigolera de sa simplicité...
Marsh Posté le 03-06-2003 à 21:35:16
Bonjour à tous!!
Je souhaiterai faire un programme d'archivage de photos.
Je vous explique ce que le programme doit faire.
Lorsque je click sur l'icone du prog il doit lire le contenu du CD que j'ai insérer, ensuite il doit créer un repertoire ds un endroit de mon choix( cette endroit sera defini ds le code du prog), attribuer a ce repertoire un nom et copier les fichiers de types JPEG, BMP, TIFF, AIF du CD dans ce répertoire.
A chaque appel du prog je dois créer un fichier avec un nom incrémental.
Exemple:
je lance le prog, il lit le cd et place le contenu ds le dossier 1
je relance le prog, il lit le cd et place le contenu ds le dossier 2
...etc,etc,etc
Tout d'abord je souhaiterai savoir si cela est réalisable en VB et si oui pourriez vs m'aidez a le faire.
Ds l'attente de vos réponses je vous remercie.