Accueil > Forum > > > > pb de 100%
pb de 100%
mardi 3 février 2009 à 00:02:02 |
pb de 100%

dyroj
|
salut, je créer un envoyer de fichier par socket, il marche tres bien et j'ai ajouté un progress bar qui progresse de la facon suivante : SendMessage(GetDlgItem(hwnd, ID_PROGRESS),PBM_SETPOS , (( taille_send*100)/ taille_file), 0); sprintf(pourcentage, "%d %d/%d" , ((taille_send*100)/taille_file), taille_send, taille_file); SetWindowText(hwnd,pourcentage); il marche tres bien pour les petit fichier de quelque MO mais quand je veut envoyer un fichier un peut volumineu de 200 MO par exemple, le comteur de pourcentage maffiche le bon resulta pour taille_send et taille_file mais pour ((taille_send*100)/taille_file) sa maffiche un 100% correcte jusqu'à 6% mais apres sa decend comme sa : -6 -5 -4 -3 -2 -1 0 arriver a zero sa repart normalement : 1 ... 6 -6 -5... je c'est bien que je mexprime mal et que je fait beaucoup de faute alors sa ne sert a rien de me gronder lol. ++
|
|
mardi 3 février 2009 à 00:05:13 |
Re : pb de 100%

dyroj
|
"salut, je créé un envoyeur de fichier par socket, il marche tres bien et j'ai ajouté un progress bar qui progresse de la facon suivante :"
|
|
mardi 3 février 2009 à 00:53:36 |
Re : pb de 100%

fcaruso
|
c'est parce que tu travaille sur des int un int, si tu compiles en 32bits, c'est 32 bits, et comme c'est signé, ben... le maxi c'est 2 millions environ. Divisé par 100, ca fait que passé 20 megas environ, ton pourcentage va partir en vrille....
Y'a plein de facons de faire. Soit tu cast en double du genre : (((double) taille_send)*100.0)/(double) taille_file. Sinon, en int ben c'est des maths : taille_send/(taille_ville/100). -> mais attention si taille_ville < 100 tu va avoir une division par zero.
Bonne chance
Fabrice
|
|
mardi 3 février 2009 à 01:12:18 |
Re : pb de 100%

dyroj
|
ho merci, sa marche voila se que sa donne : SendMessage(GetDlgItem(hwnd_main,ID_PROGRESS),PBM_SETPOS , ((( double)taille_send*100.0)/(double)taille_file), 0);sprintf(pourcentage, "%lf", (((double)taille_send*100.0)/(double)taille_file));SetWindowText(hwnd_main,pourcentage);
le probleme maintenant c'est que moi je ne veut pas afficher decimale mais un nombre entier , car la sa maffiche 100,00000. aurai tu une solution. ++
|
|
mardi 3 février 2009 à 07:57:25 |
Re : pb de 100%

fcaruso
|
Réponse acceptée !
"%.0f" pour la chaine de formattage... a+ Fabrice
|
|
jeudi 5 février 2009 à 09:07:54 |
Re : pb de 100%

NitRic
|
fcaruso, signed int c'est un peu plus de 2 milliard et pas million, non signé c'est un peu plus de 4 milliard d'après moi ce serait plus simple et rapide un entier 64 bits plutôt qu'un lourd flottant, « long long » ou « __int64 » même sur une plate-forme 32bits
en passant, que l'on compile sous Windows 32/64 bits (plate-forme PC), int et long reste 32 bits sauf pour les pointeurs qui deviennent 64 bits sous Windows 64 bits et 32 bits sous Windows 32 bits, pour du 64 bits (Windows 32/64 bits - PC), il y a __int64 (ou « long long » avec le support du C99), sous linux 64 bits (PC) c'est différent, int reste 32 bits mais long devient 64 bits comme les pointeurs, sous linux 32 bits (PC), int et long sont 32 bits, comme les pointeurs ...
~(.:: NitRic ::.)~
|
|
jeudi 5 février 2009 à 19:34:18 |
Re : pb de 100%

fcaruso
|
4.294.967.295 Oui pardon ca fait milliards, pas millions... désolé.
|
|
Cette discussion est classée dans : fichier, taille, send, file, pourcentage
Répondre à ce message
Sujets en rapport avec ce message
ouverture de fichier avec les MFC [ par steph76 ]
Bonjourvoila je programme une application qui ha beusoin d'ouvrir 1 fichier via httpJ'ai donc fait le code suivantCStdioFile *file;CInternetSession IS
probleme de listage de fichiers [ par Kevin972 ]
salut!! je ne comprends pas la fonction ne liste rien du tout.........al'aide!!!!!!!!!!!!!!!!! voici ma fonction:#include#include#include#include#in
Fichier include "glut.h" [ par Ben0007 ]
Hello,J'obtiens ce message d'erreur en compilant un exemple de programme trouvé sur ce site:"fatal error C1083: Cannot open include file: 'gl/glut.h':
Creation de fichier [ par PLUiK ]
SalutJai fait une source qui devrait normalement me créer un fichier la voici:[b]#include int WINAPI WinMain (HINSTANCE hThisInstance,HINSTANCE hPrevI
CAsyncSocket::Send problème avec la taille du packet [ par ymoser ]
Hello, J'envoie une image jpeg avec la méthode Send de la classe CAsyncSocket (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclib/
Fiabiliser transfert par socket [ par masseur ]
Salut. Je vais vous expliquer mon petit problème. Je crée un client et un serveur. Des que le serveur recoit une demande il envoie un fichier en ut
[C++]Copie de masse de tout ce qu'il y a dan sun dossier [ par alexou09 ]
Bonjour a tous! J'ai fait un programme permettant de copier un fichier. J'aimerai l'ameliorer de fasson a ce qu'il detecte tout les fichier d'un dossi
Taille de fichiers [ par Screderman ]
Hello !Je cherche un moyen ( une fonction ) permettant de trouver la taille d'un fichier afin que je puisse le lire en entier avec ma fonction de lect
Adresse disque d'un enregistrement de taille variable dans un fichier [ par exar ]
Hello !Comment forcer l'écriture d'un enregistrement à une adresse spécifique sur le disque. Comment ensuite y accéder ? Le but est de permettre l'é
Fonction de lecture de fichier [ par bastet1978 ]
Bonjour, je suis nouveaux en c, et je veux utiliser une fonction pour ouvrir mes fichiers (eviter a chaque foix de tester si ouverture ok ... etc) Voi
Livres en rapport
|
Derniers Blogs
COMMENT MAPPER UNE VUE SQL SUR UNE COLLECTION DE COMPLEX TYPE?COMMENT MAPPER UNE VUE SQL SUR UNE COLLECTION DE COMPLEX TYPE? par Matthieu MEZIL
Avec EF, les vues doivent être mappées sur des entity types. Le problème c'est que les entity types doivent avoir une clé. Avec EF, nous avons les complex type qui n'ont pas de clé mais les vues ne peuvent pas être mappées dessus. Avec EF4, il est possibl...
Cliquez pour lire la suite de l'article par Matthieu MEZIL [WF4] UN BINDING ACTIVITY/ACTIVITYDESIGNER QUI PASSE MAL?[WF4] UN BINDING ACTIVITY/ACTIVITYDESIGNER QUI PASSE MAL? par JeremyJeanson
Certain d'entre vous on peut être vécu cette situation embarrassante après quelques temps passer avec WF4 : Au début avec mon " ActivityDesigner" , tout allait bien. Et puis un jour j'ai au des problèmes de " Binding" . Alors nous sommes allé sur le site ...
Cliquez pour lire la suite de l'article par JeremyJeanson MYTIC - SHAREPOINT 2010 : DéJà UN MYTHE MICROSOFT ?MYTIC - SHAREPOINT 2010 : DéJà UN MYTHE MICROSOFT ? par junarnoalg
La prochaine session de MyTIC aura lieu à Namur, le 23 mars prochain. Pendant presque une heure, nous parlerons de SharePoint 2010. Voici un aperçu du programme.
Accueil : 17h30 Début de la session : 18h00 - Les nouvelles int...
Cliquez pour lire la suite de l'article par junarnoalg
Forum
ERREUR DE POINTEURERREUR DE POINTEUR par africanwinners
Cliquez pour lire la suite par africanwinners
Logiciels
Academy System (10.9.4.0)ACADEMY SYSTEM (10.9.4.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods
|