begin process at 2013 06 19 07:31:51
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Fichiers / Disque

 > YOYOCUT 2 - DÉCOUPE FICHIER [VISUAL C++ 2005 EXPRESS]

YOYOCUT 2 - DÉCOUPE FICHIER [VISUAL C++ 2005 EXPRESS]


 Information sur la source

Note :
10 / 10 - par 8 personnes
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Fichiers / Disque Classé sous :yoyocut, découpe, fichier, splitter, visual Niveau :Initié Date de création :22/04/2006 Date de mise à jour :26/11/2007 16:38:44 Vu / téléchargé :10 650 / 765

Auteur : yoyo269

Ecrire un message privé
Site perso
Commentaire sur cette source (32)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Comme son prédécesseur :
http://www.cppfrance.com/code.aspx?ID=34716
Il sert à découper des fichiers et à les recoller.
Principales évolutions : découpe et recomposition de plusieurs fichiers grâce à l'ajout d'une listview et support de nombreux autres fomats.

J'attends vos avis, remarques et suggestions d'améliorations (ou ajout de fonctions).
J'en profite pour ajouter qu'il y a maintenant un site dédié à YoyoCut :

http://siteayoyo.free.fr/YoyoCut/

PS : pensez à renommer les exécutables de ".ex_" en ".exe". (dans les dossiers Release et Exe)



 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

18 novembre 2006 20:31:54 :
Grosse mise à jour : - corrections de bugs; - clé MD5 - vérification de l'espace disque - vérification de doublons - pause et arret d'opération - mise à jour - recherche automatique de mise à jour - drag & drop (glisser-déposer) - gestion des gros fichiers (> 4 Go) - compatibilité avec la plupart des autres découpe fichiers (CutKiller, Xtremsplit, EasySplit, HJSplit, Splitter 4,...) - intégration dans l'environnement - programme par défaut pour l'extension ".yct" - et encore pleins d'autres choses...
19 novembre 2006 19:15:36 :
Corrections selon les remarques de SAKingdom
18 décembre 2006 22:44:14 :
Ajout de l'option "Eteindre l'ordinateur à la fin de l'opération".
27 décembre 2006 14:29:32 :
-optimisation de vitesse de découpe et recomposition -modification de la taille de la mémoire tampon par défaut -options par défaut
24 janvier 2007 20:18:03 :
- Passage du code de Dev-C++ 4.9.9.2 vers Visual C++ 2005 Express ; - Ajout de l'option "Générer des fichiers auto-recomposables" ; - Réduction de la taille de l'exécutable ; - Augmentation de la taille minimale d'un fichier à découper (100 octets -> 25 Ko) ; - Réparation automatique des registres ; - Modification des listes de l'interface ; - Meilleure prise en charge du format XTM 1.1 (vérification des clés MD5) ; - Demande d'ouverture du fichier recomposé, uniquement s'il n'y a pas eu d'erreur et qu'un seul fichier a été ajouté à la liste de recomposition ; - Modification de quelques textes au niveau de l'interface ; - Conservation du mode de découpe, ainsi que ses paramètres, lors d'un ajout de fichier à la liste ; - Correction de bugs.
16 février 2007 09:46:17 :
- Choix de la langue (Français ou Anglais) dans l'onglet 'Options' ; - Support de nouveaux formats : Koup-Koup 1.9, Koup-Koup XP (*.kop) et standard (*.001) ; - Recomposition en ligne en précisant l'URL du fichier de base (http://..../....001.yct) ; - Corrections de bugs.
16 février 2007 13:45:23 :
- Correction d'une erreur pour le calcul de la taille d'un fichier à recomposer en ligne.
27 avril 2007 09:56:04 :
- L'option "Afficher l'estimation du temps restant" passe en option par défaut ; - Meilleur support de la recomposition en ligne (http://.../....001.yct) ; - Diverses améliorations et optimisations ; - Corrections de bugs.
12 août 2007 12:38:53 :
- Si l'option "Rechercher automatiquement des mises à jour" est cochée, aucune fenêtre n'apparait si aucune mise à jour n'est trouvée - Corrections d'un bug avec les fichiers CutKiller (*.001)
12 août 2007 17:29:32 :
- Ajout du 2nd '*.exe' en '*.ex_'.
26 novembre 2007 16:38:47 :
Détection et avertissement qu'un fichier a été découpé par YoyoCut 3 ; Dans certains cas d'utilisation n'affiche plus de message d'erreur du chargement d'une image dans le systray ; Ajustements de la licence GPL.

 Sources du même auteur

Source avec Zip Source avec une capture YOYODOWN - TÉLÉCHARGEMENT HTTP [DEV-C++ 4.9.9.2]
Source avec Zip Source avec une capture YOYOMD5 - CALCUL ET AFFICHAGE DE LA CLEF MD5 D'UN FICHIER
Source avec une capture SCANNER DE DISQUES (RECURSIF)
Source avec Zip Source avec une capture TRACÉ DE COURBES À PARTIR D'UN FICHIER TEXTE (GDI)
Source avec Zip DIFFUSION D'UN WAVE PAR RTP !!! [DEV-C++]

 Sources de la même categorie

COMPTER LE NOMBRE DE PAGES D'UN FICHIER PDF par Renfield
Source avec Zip Source avec une capture GENERE BMP par lajouad
Source avec Zip Source avec une capture GETIONNAIRE D'UNE BIBLIOTHÉQUE EN C par benzarabel
FONCTION D'ÉDITION DE FICHIER BIT À BIT [C-MULTIPLATEFORME] par lynxtyle
Source avec Zip Source avec une capture UN GESTIONNAIRE DU FICHIER par benzarabel

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture GENERE BMP par lajouad
Source avec Zip Source avec une capture GETIONNAIRE D'UNE BIBLIOTHÉQUE EN C par benzarabel
FONCTION D'ÉDITION DE FICHIER BIT À BIT [C-MULTIPLATEFORME] par lynxtyle
Source avec Zip Source avec une capture UN GESTIONNAIRE DU FICHIER par benzarabel
Source avec Zip Source avec une capture YOYOCUT - ENCORE UN DÉCOUPE FICHIER [DEV-C++ 4.9.9.2] par yoyo269

Commentaires et avis

Commentaire de yoyo269 le 25/04/2006 07:21:15

J'attends vos messages.
N'hésitez pas à me données des idées d'évolution, même si elles peuvent vous paraître farfelues.

YOYO, @+.

Commentaire de deck_bsd le 27/04/2006 19:51:42

Tous ce que je dirai moi c'est : exelent ! . Concurence certaine a un bon vieu cutkiller ;).
En faite non je dirai 2 chose.

Dans ma source Trif que j'ai déposer j'ai un problème avec ma progressbar, lorsque je transfer des fichiers sur un support plus lent (exemple une disquette) et bien elle n'est ps sincronisée avec le text qu j'affiche. Tu ne saurai pas jeter un coup d'oiel a ma source svp?

Commentaire de yoyo269 le 27/04/2006 19:55:01

Ok! je vais y jeter un oeil.
Merci pour le compliment, c'est sympa.
Une note serait la bienvenue.
PS: j'avoue que j'avais en tête de faire qq chose de mieux que CutKiller en personne ! LOL.

YOYO, @+.

Commentaire de deck_bsd le 27/04/2006 20:09:53

Merci, personnellement je met 10/10 . pour moi ce programme est exelent, j'ai jms eu aucun bug.

Commentaire de yoyo269 le 27/04/2006 20:12:33

Tant mieux, mais si t'en vois un (ou plus lol) touche en moi un mot.

YOYO, @+.

Commentaire de deck_bsd le 27/04/2006 20:17:16

J'ai p-e une idée, pourquoi ne pas faire des format tous fait. je m'explique.

sur une disquette on peut mettre 1Mo et des poussière, pour pas mettre une option qui découperai directement le fichier de manière a ce que tous les fichier enfants aie une bonne taille pour etre placer sur une disquette. On peut faire cela aussi pour les cd,... enfin bon ce n'est que une idée

Commentaire de yoyo269 le 27/04/2006 20:55:06

Ah oui merci. Je vais voir si je vais le faire.
En tous cas pas tout de suite, je suis sur autre chose en ce moment.

YOYO, @+.

Commentaire de yoyo269 le 18/11/2006 20:33:52

Comme promis j'ai enfin mis à jour ma source YoyoCut 2 !
A vos claviers pur vos remarques et impressions !

YOYO, @+.

Commentaire de SAKingdom le 18/11/2006 21:00:42

Salut. J'ai pas le temps de tout vérifier (trop gros) mais je remarque quelque petites choses en partant:

if(strcmp(Argument, ""))
ce serait pas mieu de faire
if(!Argument[0])
Ou quelque chose dans le genre?

Ensuite:

if(Argument[0] != '\"')
{
char Arg[MAX_PATH];
strcpy(Arg, "\"");

strcpy pour une seul valeur? Pas mieu de faire (à la limite): Arg[0] = '\"'; Arg[1] = 0; ???

Pour faire plus propre, tu peux faire des macro aussi:

CPYCHAR(dest, c) dest[0] = c; dest[1] = 0

Comme je dis, j'ai pas trop le temps donc je n'est pas le temps de confirmer ce que je dis ni d'aller plus loin pour l'instant.
À toi de voir.
Tien moi au courant.

Commentaire de SAKingdom le 18/11/2006 21:06:13

Oups, j'ai oublier le #define:

#define CPYCHAR(dest, c) dest[0] = c; dest[1] = 0

Commentaire de SAKingdom le 18/11/2006 21:48:03

Bon, je me suis trompé.

Par ton if(strcmp(Argument, "")), je suppose que c'est pour tester si il existe quelque chose dans la chaine. Donc c'est pas:

if(!Argument[0])
comme je disais mais
if(Argument[0])

Commentaire de yoyo269 le 19/11/2006 08:27:57

Tu as tout à fait raison SAKingdom !
Merci beaucoup ! C'est ma sale habitude d'utiliser strcmp ça !
J'espère que tu regarderas au reste pour avoir ton avis.

YOYO, @+.

Commentaire de SAKingdom le 19/11/2006 17:29:20

Bon, je remarque encore quelque strcmp(.., "")

Mais là, je vien de tomber sur une horreur:
À partir de la ligne 7776, tu gère ton tableau Fichier en te situant dedans avec sa grosseur. Le problème c'est que tu apelle À CHAQUE FOIS strlen. Tu parcoure toute la chaine à chaque fois et je remarque un nombre important de ce genre de manipulation. À tu oublier de mettre à jour cette section? ;)

Commentaire de wizard512 le 19/11/2006 17:38:16

OO

Jolie source,
peux etre trés utile,
et en plus légère, peut etre glissé dans une clé usb en plus
d'une des partie d'un fichier couper, bref vraiment éfficace
pour reconstitution apres....

Utilisation vraiment facile, que sa soit pour le découpage,
ou pour la reconstitution...
Avec menu et quelques options utile, ainsi qu'un retrait
dans la bar de démarrage en cas de besoin....

En plus un bon suivi de la source,
bref pour moi sa sera un +10 et
en souhaitant qu'il y aura une prochaine version...


    ~~ DotWizard512 ~~

Commentaire de yoyo269 le 19/11/2006 18:18:22

SAKingdom >> llllllllllllloooooooooollllllllllllllll !!! olala le boulot ! heureusement que tu me l'as dit. J'avais cette fonction juste pour qu'elle fonctionne au début (avec copier coller etc...) et j'ai oublié de la retoucher. Je vais faire ça de suite parce que c'est vrai que le nombre de strlen() est impressionnant en s'y repenchant dessus. MERCI !!!

wizard512 >> merci pour ton commentaire c'est sympa ! Je précise d'ailleurs que YoyoCut 2 est téléchargeable sur telecharger.com si vous voulez en parler à votre entourage. Une version 3 est prévue mais le temps libre décidera ou non si elle verra le jour (je l'espère entous cas).

YOYO, @+.

Commentaire de yoyo269 le 19/11/2006 19:16:44

Ca y est c'est mis à jour !!!
Il y a en plus un rapport d'erreurs un peu plus évolué que le précédent.

YOYO, @+.

Commentaire de SAKingdom le 23/11/2006 17:21:35

Oufffff. Le code est très gros. Je progresse (lentement).

J'ai remarqué une ptite chose pas très importante mais bon.... ce serais interessent de corriger pour une future version.

Dans les procédures de tes contrôles, pour WM_PAINT, tu fais hdc = GetDC(...) et ReleaseDC.

Cependant, je crois que BeginPaint et EndPaint font la même chose:
hdc = BeginPaint(...);
EndPaint(...);

Bon c'est pas grand chose mais ça te sauve 2 appels de fonction pour chaque "repainturage" de chaque contrôle.

Commentaire de yoyo269 le 23/11/2006 18:39:25

Salut SAKingdom !
Ben dis donc t'es motivé toi, surtout que mon code est pas super commenté ! lol
Je pensais que tu avais lâché le morceau (et j'aurai tout à fait compris).
En tous cas merci bcp de ton aide, vraiment un grand MERCI ! :p
Pour ce qui est des messages WM_PAINT, en fait ils ne me servent à rien ici puisque je ne traite rien de particulier.
Donc à la limite je peux les supprimer.

YOYO, @+.

Commentaire de SAKingdom le 24/11/2006 00:11:06

Ben c'est à ça que je pensais mais je n'étais sûr de rien (peut-être que ça aurais été utile pour une autre version ou ça corriger quelque chose, qui sais).

Pour ce qui est de la motivation, non j'en ai pas beaucoup je dois dire. Je lis petit bout par petit bout. Pour être franc, je ne comprend pas 95% du programme (son fonctionnement). C'est pour ça que je repère seulement ces petites choses. Étant donné que ton code est très gros, je ne peux pas avoir une vue d'ensemble et repérer les gros bugs potentiels (par exemple, oublier de fermer une instance ou de libérer la mémoire ou mauvaise manipulation d'un poiteur etc.).

Pour ce qui est de commenter la source, bah pas la peine. C'est vraiment beaucoup trop gros et de toute façon, je ne crois pas que ça changera quelque chose. Soi tu comprend le code (avec ou sans commentaire) soi tu le comprend pas (de tout façon, ce n'est pas pour débutant).

Mais j'y pense, j'ai pas encore donné de note moi. Allez, va pour un 10.

Commentaire de SAKingdom le 24/11/2006 00:15:34

Oups c'est pas "mauvaise manipulation de poiteur" mais plutot pointeur.

Ça a plus de sens comme ça.

Commentaire de vecchio56 le 20/12/2006 00:26:33 administrateur CS

Effectivement, SAKingdom, tu es très courageux
Franchement un seul fichier contenant tout le code, c'est pas très malin
Je sais pas si t'a fait une petite phase d'analyse et de conception (a priori je dirais que non), mais ca aurait été utile.
La c'est très difficile de comprendre l'architecture de ton projet

Enfin si t'arrive à te comprendre c'est l'essentiel, mais ne reste pas trop longtemps sans toucher à ton projet, sinon un beau jour tu va vouloir le modifier, et là tu ne va plus rien comprendre

Commentaire de vecchio56 le 20/12/2006 00:34:26 administrateur CS

En fait c'est ce que j'ai fait dans ce code par exemple
http://www.cppfrance.com/code.aspx?ID=28413
Mais depuis je me suis soigné, je recommencerais pas :)

Commentaire de yoyo269 le 20/12/2006 09:36:03

Salut vecchio56,

c'est vrai que cette méthode n'est pas la mieux, mis on va dire que c'est ma façon de coder bien à moi ! ;)
Je comprends très bien que mon code ne soit pas très lisible pour quelqu'un d'autre que moi, mais moi avec l'habitude je me relis sans aucun souci. Même en reprenant un code plusieurs mois plus tard.
Je vais quand même essayer de changer mon habitude, pour utiliser plusieurs .cpp.
Sinon qu'appelles-tu une phrase d'analyse et de conception ?
Ca m'intéresse beaucoup !

Merci d'avance pour ta réponse et merci aussi pour tes remarques ! :D

YOYO, @+.

Commentaire de vecchio56 le 20/12/2006 18:28:48 administrateur CS

En gros c'est un travail que tu fais sur papier ou tu va définir les grandes lignes de ton application, comment elle va être organisée (principalement: des cas d'utilisation, des diagrammes de classe, des diagrammes de séquence).
Ce dont je parle est valable dans le cadre de la POO, ce qui n'est pas ton cas.
Ici, ca aurait pu consister à identifier différents modules, afin de ne pas tout mélanger comme tu l'a fait

Commentaire de CHAR As Human le 27/12/2006 23:05:33

400 fois mieu que cut killer

Commentaire de yoyo269 le 28/12/2006 10:04:18

Merci CHAR As Human ! (ça sent le VB ce nom là)
C'est sympa mais faut pas exagéré non plus ! :-D
Comme je l'ai déjà dit, si tu as des remarques, suggestions et surtout si tu trouves des bugs, hésite pas à m'en parler, ça serait cool !
Merci d'avance.

YOYO, @+.

Commentaire de yoyo269 le 24/01/2007 20:21:20

Nouvelle mise à jour.
Principale avancée, la nouvelle option qui permet de générer des fichiers auto-recomposables. C'est-à-dire que YoyoCut n'est pas nécessaire pour recomposer le fichier d'origine.
Essayez et vous verrez ! ;)

YOYO, @+.

Commentaire de yoyo269 le 16/02/2007 09:52:24

Nouvelle mise à jour.
Au menu, choix de la langue (anglais ou français).
Comme c'est moi (et moi seul) qui est fait la traduction, je ne promets rien quant à la qualité de l'anglais. lol
Donc si quelqu'un se sent capable de vérifier cela...
Autrement, une nouvelle fonctionnalité vous permet de recomposer un fichier, découpé avec YoyoCut, dont les morceaux se situent sur un serveur HTTP.
Il vous suffit d'entrer l'URL du fichier de base (*.001.yct) et de lancer la recomposition.
Pas de souci à avoir, YoyoCut télécharge seul les données nécessaires pour recomposer le fichier.
Bon test à ceux que ça tente ! :p

YOYO, @+.

Commentaire de ndubien le 12/04/2007 20:36:44

Bonjour yoyo269,

je vous écrit pour vous signaler une défaillance dans votre programme (il s'agit d'une défaillance minime). J'ai un fichier nommé : "a.f i l e" de 132ko, le programme le coupe correctement mais lors de la recomposition de ce fichier, votre programme crée un fichier nommé différement : "a.f" de 0ko. Je pense que ce problème sera simple à résoudre.

En tout cas, il s'agit d'une très bonne source, car elle fonctionne bien, est accueillante...

A bientôt.
ndubien

Commentaire de yoyo269 le 13/04/2007 10:30:21

Salut ndubien !

Merci pour l'information, mais je connaissais déjà ce petit souci. En effet, c'est le format que j'ai choisi qui est erroné et qui donc provoque ce problème. Je m'explique.
Lorsque je découpe un fichier, au début du fichier de base (*.001.yct) je mets ceci :
extension nombre_de_fichiers (sur 3 caractères)
Donc dans ton cas ndubien, cela donne ceci, en le découpant en 3 fichiers (par exemple) :
f i l e 003
Donc mo programme, considère que l'extension est "f" et que le nombre de fichier est "i l", donc invalide. D'où la non recomposition.
Comme c'est le format que j'ai choisi pour la version 2.x, par souci de compatibilité, je ne compte pas le changer. Pourtant il suffirait par exemple de remplacer l'espace de séparation entre l'extension et le nombre de fichiers par le caractère NULL (code ascii : 0).
Heureusement je suis une autre version, la 3, utilisant un format totalement différent et beaucoup plus fiable.

YOYO, @+.

Commentaire de yoyo269 le 12/08/2007 12:40:09

Nouvelle mise à jour !

YOYO, @+.

Commentaire de yoyo269 le 26/11/2007 16:40:34

Mise à jour !

YOYO, @+.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Lire un fichier sous visual c++ sans l'ouvrir!! [ par motus ] "sans l'ouvrir", c'est une faon de parler... En fait, suite un drag&drop, j'ouvre le fichier "dragg" pour rcuprer certaines parties du texte l'intri erreur de demarrage programme [ par nango ] Quand je compile sous visual c++ il m'apparait le message d'erreur suivant : "un fichier.DLL requis, MSPDB60.DLL, n'a pas été trouvé".Pourtant ce fich pb visual c++ fichiers [ par pichu ] dans une fonction de visual j'ouvre un fichier fstream en lecture. Ce fichier contient des informations. Mais ca me renvoie true quand j'affiche le ré Visualisation d'un fichier texte avec Visual C++ [ par pierrot33 ] Bonjour à tous,Je fais mes premier pas avec Visual C++ et je cherche désepérément le moyen d'afficher un fichier texte avec notepad (par exemple). Mer Gros Pb Visual C++ 6.0 [ par nathalieJ ] Lors de l'installation de MS Visual Studio 6.0, j'ai un fichier qui est apparamment "corrupted", malgré les réinstallations multiples, l'installation Fichier, Debug et Visual C++ 6.0 [ par Katian ] Simple:sous visual C++ 6.0=>ifstream input;input.read(Carac, sizeof(Carac));<=Le read me renvoie un caractere mais en debug il me dit que c'est Créer un fichier executable avec Visual C++ [ par ledeveloppeurfou ] Comment on fait pour créer à partir de son projet le programme qui sera exécutable par tout le monde?Merci Fichier msvcr70d.pdb de Visual.net [ par 51greg ] Bonjour,si qqun utilise Vc++.net pourrait-il m'envoyer le fichier msvcr70d.pdb car la version CD dont je dispose a un probléme. Et ce fichier n'est pa Passage de visual a devc++. Pb fichier rc [ par TheMaster ] Bonjour,je convertis mes projets Vc6++ en projet Devcpp, tout fonctionnent qd j'éxécute mes nouveaux .exeMais avec vc++, j'affichier des bitmaps en fo Visual C++ 2003 .NET [ par Logan ] Bonjour,j'ai un gros problème,je tente aujourd'hui de compiler un put* de mod Mule, pour pouvoir après le modifier (et ui, fo deja arriver à le compil


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Juin 2013
LMMJVSD
     12
3456789
10111213141516
17181920212223
24252627282930

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,076 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales