Progression d'une copie

soria17 Messages postés 11 Date d'inscription mardi 3 avril 2007 Statut Membre Dernière intervention 12 janvier 2009 - 26 juin 2007 à 09:39
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 - 26 juin 2007 à 20:13
Bonjour,

Je fais une copie d'une base de données d'un pc à un autre avec un lecteur réseau. Le probleme c'est que je ne sais pas le temps que sa va durée (debit du reseau variable). Donc je voulais savoir s'il était possible d'avoir une variable qui donne la progression de la copie.

Merci!!

17 réponses

cs_Exploreur Messages postés 4822 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 14
26 juin 2007 à 09:46
Salut,

Tu veux faire défiler un progressBar ?

Sinon, regarde sur le site avec le moteur de recherche, il me semble qu'il y a des sources qui propose une animation quand on fait une copie de fichier...

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
allthew3 Messages postés 551 Date d'inscription samedi 8 janvier 2005 Statut Membre Dernière intervention 12 avril 2008 2
26 juin 2007 à 09:47
si tu connais la taille de la base de donnée, tu compare la taille de cette base à la taille déjà copiée ...
0
soria17 Messages postés 11 Date d'inscription mardi 3 avril 2007 Statut Membre Dernière intervention 12 janvier 2009
26 juin 2007 à 09:52
Exploreur: Merci pr vos reponses mais je le lance avec les taches planifiées donc pas d'interface.

Allthew3 : ta réponse est interessante mais comment je fais? je peux les comparer meme si je suis en train de la copier? 
0
allthew3 Messages postés 551 Date d'inscription samedi 8 janvier 2005 Statut Membre Dernière intervention 12 avril 2008 2
26 juin 2007 à 09:55
avec un timer, à chaque seconde (par exemple) tu calcules la taille de la base de donnée que tu copie
(je fais pas de VB6 donc je peux pas te donner d'exemple, sauf si tu veux voir du VB 2005 ...)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
soria17 Messages postés 11 Date d'inscription mardi 3 avril 2007 Statut Membre Dernière intervention 12 janvier 2009
26 juin 2007 à 10:01
Ok donne toujours, j'essayerais de comprendre comment tu as pour le remettre en vbscript. Je vais quand meme essayer de trouver sur internet les methodes pour se que tu m'a dit !!
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 71
26 juin 2007 à 10:22
API SHFileOperation
http://msdn2.microsoft.com/en-us/library/ms647743.aspx

te permet de copier un fichier avec la boite de progression de Windows....
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 71
26 juin 2007 à 10:23
ah pardon, tu es en VBS ^^

donc tu es eue
0
soria17 Messages postés 11 Date d'inscription mardi 3 avril 2007 Statut Membre Dernière intervention 12 janvier 2009
26 juin 2007 à 10:36
lol, merci quand meme!!!
 
0
allthew3 Messages postés 551 Date d'inscription samedi 8 janvier 2005 Statut Membre Dernière intervention 12 avril 2008 2
26 juin 2007 à 10:37
Dim tailleBDD as long = ' taille de la base de donnée

Sub Timer_Tick(...) Handles Timer1.Tick
'à chaque seconde on execute ceci
Dim fi as new IO.FileInfo(pathnouvelleBDD)
dim tailleactuelle as long = CType(fi.Length / 1024, Long) ' taille de nouvelle BDD en Ko
' on compare les 2 tailles (on exprime des pourcentages, un nombre de Ko restants ...)
end sub

en espérant que ça puisse t'aider ...
en gros le principe c'est de comparer la taille de chaque BDD régulièrement pour savoir l'avancement
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 71
26 juin 2007 à 11:29
Soria17 ne pourras rien faire de ton code, allthew3, elle code en VbScript...
0
allthew3 Messages postés 551 Date d'inscription samedi 8 janvier 2005 Statut Membre Dernière intervention 12 avril 2008 2
26 juin 2007 à 11:34
au cas où c'est la même fonction en VBS ...
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 71
26 juin 2007 à 12:58
bien peu de choses sont similaires entre VBS et VB.Net :p

avec VB6 et VBS, encore, on peut s'y retrouver, mais là...
0
allthew3 Messages postés 551 Date d'inscription samedi 8 janvier 2005 Statut Membre Dernière intervention 12 avril 2008 2
26 juin 2007 à 13:00
je sais lol
mais bon c'est toujours bien d'essayer ^^
0
soria17 Messages postés 11 Date d'inscription mardi 3 avril 2007 Statut Membre Dernière intervention 12 janvier 2009
26 juin 2007 à 14:13
Je vais essayer en effet, je pense que le principe est le meme, faut juste que je trouve les bonnes fonctions si elles existent en VBS 
0
cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 26
26 juin 2007 à 17:43
 Bonjour à tous

La plupart de mes petites connaissances, en vbs, provient de ce forum et de posts avec Renfield.
Donc, s'il dit qu'il n'y a pas de progressbar en vbs .... (jusqu'à preuve du contraire)

Néanmoins, vous pouvez afficher une fenêtre d'attente:

' ################## AFFICHER UNE FENETRE D'INFORMATION 
strComputer = "."
Set objWMIService = GetObject("Winmgmts:\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * From Win32_DesktopMonitor")
For Each objItem in colItems
    intHorizontal = objItem.ScreenWidth
    intVertical = objItem.ScreenHeight
Next
Set objExplorer = CreateObject("InternetExplorer.Application")
objExplorer.Navigate "about:blank"   
objExplorer.ToolBar = 0
objExplorer.StatusBar = 0
objExplorer.Left = (intHorizontal - 800) / 2
objExplorer.Top = (intVertical - 100) / 2
objExplorer.Width = 500
objExplorer.Height = 180
objExplorer.Visible = 1             
objExplorer.Document.Body.Style.Cursor = "wait"
objExplorer.Document.Title = "Copie de fichiersfic & "  -  " & Now
objExplorer.Document.Body.InnerHTML = "
Création du fichier
""" &_
 fic & """
en cours , merci de patienter.
"

'ICI copy files ou folders

' ################## FERMER LA FENETRE 
objExplorer.Document.Body.Style.Cursor = "default"
objExplorer.Quit

Set colItems = Nothing
Set objExplorer = Nothing
Set objWMIService = Nothing
MsgBox "script terminé: " & Now

jean-marc
0
soria17 Messages postés 11 Date d'inscription mardi 3 avril 2007 Statut Membre Dernière intervention 12 janvier 2009
26 juin 2007 à 19:42
Merci, sa pourra m'aider mais le probleme c'est que je ne veux aucune interface car il est lancé à 4h00 et rien ne doit s'afficher. Je pourrais toujours, l'utiliser quand je suis connectée .
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 71
26 juin 2007 à 20:13
si personne n'est connecté a cette heure-ci, a quoi bon vouloir afficher quoi que ce soit ?

bonne idée, JMO, d'utiliser une page web :p

Renfield
Admin CodeS-SourceS- MVP Visual Basic
0