begin process at 2012 02 11 05:31:29
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C#

 > 

Archives

 > 

Fichier / Disque

 > 

Temps de copie


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Temps de copie

dimanche 13 février 2005 à 18:27:22 | Temps de copie

cpetter

Bonsoir

Je viens de créer une divxothèque et lors de la copie j'utilise 2 threads :
1 pour la copie
et 1 pour l'affichage d'une progressbar.

Pour la copie c bon, et la progressbar avance correctement, mais je ne vois pas comment faire pour savoir la vitesse de copie, le temps restant, ... afin de modeler la progressbar en fct de la copie!!

Je vous met le code important

private void CopyThreads()
{
   progressBar1.Visible = true;
   ThreadCopy = new System.Threading.Thread(new
     System.Threading.ThreadStart(this.Copy_entries));
   ThreadCopy.Start();   
   ThreadProgress = new System.Threading.Thread(new
     System.Threading.ThreadStart(this.ProgressBar));
   ThreadProgress.Start();   
}
private void ProgressBar()
{
   time.Enabled = true;
   time.Elapsed += new System.Timers.ElapsedEventHandler(IncreaseProgressBar);
   time.Start();
}
private void IncreaseProgressBar(object sender, System.Timers.ElapsedEventArgs e)
{
    progressBar1.Increment(1);
   this.Text = progressBar1.Value.ToString() + "% Completed";
   if (progressBar1.Value == progressBar1.Maximum)
      time.Stop();
   }
}
private void Copy_entries()
{
   File.Copy(path1, path2, true);
}
dimanche 13 février 2005 à 18:48:19 | Re : Temps de copie

coq

Administrateur CodeS-SourceS
Ba déjà je voudrais bien savoir comment tu fais pour avoir le pourcentage exact de la copie du fichier alors que tu utilises File.Copy
Quitte a laisser win gérer la copie, jette un coup d'oeil à ça : [ Lien ] :-)



Cocoricoooooooo !!!!
coq
MVP Visual C#
dimanche 13 février 2005 à 18:52:30 | Re : Temps de copie

cpetter

Justement, je ne voyait pas non plus!!

c pour ca que g fait ce post!!

Merci pour le lien!!
je vais voir ce que j'arrive à faire avec!
mardi 15 février 2005 à 11:31:03 | Re : Temps de copie

cpetter

Ok super cool cet dll!!
ca permet pas grand chose!!
a part afficher une fenêtre de copie, qui calcule n'importe koi!!
Voilà le code fournit!!
private uint DoCalc() {
// pretend to do some calc
System.Threading.Thread.Sleep( 2000 );
// get some biggish number
Random rand = new Random();
return (uint)rand.Next( 150, 500 );
}
Pas très utile. Il me faudrait quelque chose de précis!
Qui calcule vraiment le temps restant!!

Ou alors je n'ai pas tout compris!!
mardi 15 février 2005 à 11:39:30 | Re : Temps de copie

coq

Administrateur CodeS-SourceS
Hum je crois que j'ai confondu avec la demande de copie avec affichage de la boite de progression (comme avec un c/c dans l'explorer), apparemment là c'est juste pour afficher la boite...

Sinon le principe en gros est de regarder ponctuellement (avec une frequence sup ou égale a 1 seconde) :
- volume copié
- temps ecoulé depuis le debut de la copie
Connaissant le volume total tu peux determiner la vitesse moyenne et donc estimer le temps restant.
Mais pour ça tu dois copier ton fichier "à la main", pas avec File.Copy

Une autre solution serait d'utiliser SHFileOperation.


Cocoricoooooooo !!!!
coq
MVP Visual C#
mardi 15 février 2005 à 11:47:26 | Re : Temps de copie

cpetter

En gros il faudrait copier le fichier octet par octet. A chaque secondes ou autre temps de check je recalcule le temps restant en fct du temps de copie et le nb d'octets déjà copie ?
mardi 15 février 2005 à 11:55:18 | Re : Temps de copie

coq

Administrateur CodeS-SourceS
euh non pas octet par octet sinon tu vas avoir des perfs desastreuses.
Le mieux je pense est de faire baisser/augmenter la taille du buffer afin d'obtenir une lecture/copie en une seconde, mais je ne suis pas sur que ce soit ce qu'il y a de mieux.
Essaie de trouver plus d'infos là dessus.



Cocoricoooooooo !!!!
coq
MVP Visual C#
mardi 15 février 2005 à 11:57:28 | Re : Temps de copie

cpetter

Ok Merci

Je vais voir ce que je peux faire!!

Merci pour tout


Cette discussion est classée dans : system, copie, private, progressbar, progressbar1


Répondre à ce message

Sujets en rapport avec ce message

transfere les donnés dune bases acces dans un fichier txt [ par kmbmaster ] bonjour ,je suis debutant en c# jaimerais pouvoir transfere les donnés dune base (accesss) dans un fichier texte mais je n'y arrive pas ! est ce qun [C#] CopyTo => Pb de copy [ par adrien78 ] J' ai absolument besoins de récréer la fonction CopyTo en C#=> Cependant j' ai deux pb : - Le fichier copié ne peut pas être lu (érreur de copie definir une url dans axWebBrowser [ par gfpl ] hello bon voila je sais comment on fait a partir d'une case de selection mais comment faire pour avoir tjs la meme page que l'utilisateur ne puisse p Probleme dans une classe SMTP en .NET 2 [ par walteau ] Bonsoir, je suis en pleine création d'une classe Smtp dont voici la source:using System;using System.Collections.Generic;using System.Text;using  m =S Problemes avec les sockets en .net .Ca ne marche jamais [ par francesdereve ] je realise une application de type chet,client/serveur j'ai fait une librairie qui contient toutes les methodes ,j'ai suivi l'exemple du site.http://w Problème d'instanciation... [ par bofkill ] Salut à tous ! Bon, j'annonce la couleur en signalant que je suis un grooos noob en C#. La 1ere fois que j'y ai touché, c'était lundi ^^ J'ai une fen Tooltip bug [ par agarcia_01 ] Bonjour, Je developpe une interface graphique en C# qui possede une icone style messenger dans la tray bar. Lorsque je lance mon application e Urgent SVP star de C# [ par hred1 ] Bonjour, Je test l'acquisition d'un signal en utilisant comme support le C#, donc j'arrive à acquirir mon signal Par la suite je cherche le max de mo Afficher une collection dans un datagridview [ par thorgal1612 ] Bonjour, Mon problème est le suivant. Je cherche à afficher dans un datagridview les différents éléments d'une collection d'objets "LigneFactureClas Equivalent ContextMenuStrip en .NET 1.1 ? [ par fcolo ] Bonjour tout le monde, J'ai réalisé une application sous VS2005 donc compilée en .NET 2.0.Or, je voudrais la compiler en .NET 1.1 pour des raison de p


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
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 : 0,952 sec (4)

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