begin process at 2012 02 13 17:32:50
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Divers

 > 

Trucs & Astuces

 > 

Perte de controle


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

Perte de controle

jeudi 14 décembre 2006 à 13:10:32 | Perte de controle

PrinceSilk

Bonjour,
Je réalise actuellement un programme de cryptage qui fonctionne plutot bien, mais durant le traitement, si je passe sur une autre application, la fenetre de programme vire au blanc, et ne retrouve son aspect normal qu'une fois tous les fichiers cryptés, ce qui m'empeche de suivre l'avancé du travail (j'ai mis une progressbar qui marche tres bien, mais qui bloque egalement si je change d'application).
J'ai passer tout le travail de cryptage sur une autre Form invisible, esperant que ma Form Principal resterait accessible pendant le cryptage, mais non, elle bloque... Quelqu'un aurait il une solution ?
J'ai essayé d'aller fouiner du coté des priorités des pages, mais j'ai pas trouvé..

Merci d'avance
jeudi 14 décembre 2006 à 13:20:05 | Re : Perte de controle

NHenry

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
Bonjour

Tu peux utiliser DoEvents, mais cela ralentira les opérations de cryptage.

Il est plus facile de batiser quelqu'un que de la convertir. (surtout en programmation)
NHenry (VB6, VBA excel, VB.NET, C++, C#.Net)
jeudi 14 décembre 2006 à 13:24:52 | Re : Perte de controle

casy

Membre Club
Réponse acceptée !

Insère quelques DoEvents dans tes boucles, pour permettre la gestion des autres évènements de ton écran.

---- Sevyc64  (alias Casy) ----
# LE PARTAGE EST NOTRE FORCE #
jeudi 14 décembre 2006 à 14:12:51 | Re : Perte de controle

econs

Administrateur CodeS-SourceS
Réponse acceptée !

Salut,

Pour visualiser à quel point DoEvents ralentit ton process, tente le test suivant :



Dim t As Long

t = Timer
For i = 0 To 150000
    a = 1
Next i
MsgBox "Sans DoEvents : " & (Timer - t) & "s" & vbCrLf & "Mais tu n'as pas la main pendant le calcul"

t = Timer
For i = 0 To 150000
    a = 1
    DoEvents
Next i
MsgBox "Avec DoEvents : " & (Timer - t) & "s" & vbCrLf & "Mais tu as la main pendant le calcul"



A toi de voir s'il vaut mieux ralentir le process, ou avoir la main le temps que çà calcule.

Manu

--------------------------------------------------------------------------------------------
Avant de poster un message, n'oubliez pas de consulter le reglement.
jeudi 14 décembre 2006 à 14:20:42 | Re : Perte de controle

casy

Membre Club
Réponse acceptée !

Manu, faut préciser tout de même qu'en utilisant l'instructionTimer dans ton code, tu obtient u résultat à +/- 0.02sec (20ms) près

Pour une meilleurs precision il faut utiliser l'api GetTickCount ou mieux sur les machines qui le permettent QueryPerformanceCounter

---- Sevyc64  (alias Casy) ----
# LE PARTAGE EST NOTRE FORCE #
jeudi 14 décembre 2006 à 14:27:03 | Re : Perte de controle

econs

Administrateur CodeS-SourceS
Réponse acceptée !

casy> Oui, mais le but n'est pas ici de l'embrouiller, mais de se focaliser sur l'essentiel.
J'ai mis une boucle suffisamment longue justement pour que cette imprecision soit négligeable. (en tout cas, testé sous Word, c'est négligeable).
Mais la remarque valait la peine d'être précisée.


Manu

--------------------------------------------------------------------------------------------
Avant de poster un message, n'oubliez pas de consulter le reglement.
jeudi 14 décembre 2006 à 14:59:47 | Re : Perte de controle

PrinceSilk

Réponse acceptée !
Merci tout le monde, ca marche :)
jeudi 14 décembre 2006 à 15:14:07 | Re : Perte de controle

Jomba

Réponse acceptée !
bonjour,
tu pourrais nous donner des résultats svp?
c'est à dire combien de temps avec le doevents et sans (approximativement), pour comparer l'impact sur une telle application
jeudi 14 décembre 2006 à 15:30:20 | Re : Perte de controle

PrinceSilk

Réponse acceptée !
Pour un fichier de 10Mo, mon programme prend 24sec, avec ou sans DoEvents (sachant que le cryptage va executer 4000 cycles, donc 4000 DoEvents)
Instruction très utile ce DoEvents, je vais l'incorporer à certains de mes prog qui "buggait" graphiquement


Cette discussion est classée dans : programme, application, controle, perte, cryptage


Répondre à ce message

Sujets en rapport avec ce message

controle texte lie par programme a un controle data [ par OCh ] Lorsque j'indique le nom de la "DataSource" dans les proprietes du controle texte, tout fonctionne.Si j'essaie de faire, dans mon programme:Text1.Data Associer des fichiers à mon application [ par Jonef ] Bonjour,voilà je souhaiterais que lorsque je clique (dans l'explorateur Windows) un fichier à l'extension ".msp", mon programme démarre et surtout qu' questions sur visual basic [ par Anne ] S'il vous plait,que veut dire ce début de programme(il s'agit d'un programme de création d'index)Application.DisplayAlerts=falseOn error resume nextSh Controle MediaPlayer [ par domenico ] Bonjour,Puis-je utiliser le controle ocx MediaPlayer dans mes application et le distribuer.Sinon, comment afficher une video dans une feuille de mon a vba excel et programme [ par lolo ] j ouvre show case (requete as400) parcr = Shell("C:\Program Files\ShowCase STRATEGY\Desktop\vista.exe") 'recup idchannel = Application.DDEInitiate("VI Programme de controle de file .exe des ordi d'une sociètè. [ par berry ] en Fait, je voudrais avoir une idèe sur un prog de controle des ordi d'une maniere que chaque ordi ne lance qu'un seul prog d'execution à la fois.merc Agrandir et réduire une application [ par Gadot ] Je voudrais pouvoir à partir de mon programme minimiser,agrandir ou restaurer une application se trouvant dans la barre de tache et lancée avec mon pr paramètre à un programme VB [ par ddp ] Comment recupérer un paramètre passer à mon application .par exemple : - monappli.exe fichier.extJe sais enregistrer les extensions des fichiers de mo application du controle mscomm [ par Lamine ] salutje voudrai des programmes d' application avec le controle MSCOMM. Lancer un programme a partir be VBA [ par lulociel ] Bonjour! Je souhaite lancer une application pour extraire des données de l'AS400(que j'utilise au travail).Je voulais savoir s'il est possible d'execu


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
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 : 4,883 sec (3)

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