[..] Création point de restauration : blocage GUI

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
franco
Niveau 7
Niveau 7
Messages : 343
Enregistré le : lun. 03 oct. 2011 22:37
Localisation : Liévin
Status : Hors ligne

[..] Création point de restauration : blocage GUI

#1

Message par franco »

Bonjour.

Désolé pour ce titre à rallonge, mais ceci explique en gros mon souci. ;)

Pour un projet en cours, on inclue la possibilité de la création d'un point de restauration.
La création en elle-même fonctionne.

J'ai mis une barre de progression.

Mais au moment où la création du point débute, la GUI (interface graphique) est figé :
  • Aucune interaction possible.
  • La barre de progression (normalement fonctionnelle) ne défile pas.
  • A la fin de la création, j'ai de nouveau le contrôle de ma GUI.
J'ai mis que le script lié à ce phénomène.

Voici le code :
► Afficher le textecode n°1
Vu que la GUI se bloque, j'ai pondu un second code, pour "contourner" le problème.

=> Le même que le premier, mais avec des petites modifications.
  • Plus de barre de progression
  • Réduction de la GUI dans la barre des tâches
  • Un traytip (pour remplacer la barre de progression)
  • Une fois la création du point effectué, on réaffiche la GUI
Voici le code
► Afficher le textecode n°2

Donc, ma question : est-ce possible que la GUI ne soit pas bloquée, et donc avoir une barre de progression qui fonctionne ?


Merci à tous ! ;)
@+
L'entraide, c'est mon dada ;)
Avatar du membre
PandiPanda
Membre émérite
Membre émérite
Messages : 656
Enregistré le : mar. 19 juil. 2011 14:03
Localisation : Bruxelles
Status : Hors ligne

Re: [..] Création point de restauration : blocage GUI

#2

Message par PandiPanda »

Bonjour, voici un exemple


Vous devez appuyer sur le bouton, et attendre que ca atteint 200 pour pouvoir quitté.
► Afficher le textecode qui représente votre problème
► Afficher le texteVoici une résolution possible
La seule moralité qui tienne dans un monde cruel est la chance. Impartiale. Équitable. Vraie
Avatar du membre
franco
Niveau 7
Niveau 7
Messages : 343
Enregistré le : lun. 03 oct. 2011 22:37
Localisation : Liévin
Status : Hors ligne

Re: [..] Création point de restauration : blocage GUI

#3

Message par franco »

Salut ;)

Merci PandiPanda ;)

J'ai donc, sur mon code, utilisé le deuxième bouton pour tester.

Et en effet, il passe à 1 et se bloque.

Je pense que la fonction suivante empêche toute interaction avec la gui.
Néanmoins, l’exemple que tu m'as donnée m'apprend des choses que je ne connaissais pas ;)


La fonction :

Code : Tout sélectionner

Func _CreateSystemRestorePoint($description, $disable = True)
    $obj = ObjGet("winmgmts:{impersonationLevel=impersonate}!root/default:SystemRestore")
    $obj.Enable("")
    $obj.CreateRestorePoint($description, 12, 100)
    If $disable Then
        $obj.Disable("")
    EndIf
EndFunc   ;==>_CreateSystemRestorePoint
 
Je vais voir si je ne trouve pas une alternative.

@+
L'entraide, c'est mon dada ;)
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Création point de restauration : blocage GUI

#4

Message par jguinch »

franco a écrit :Je pense que la fonction suivante empêche toute interaction avec la gui
Oui, c'est comme une fonction MsgBox ou Sleep : c'est bloquant... :(

Tu peux contourner ça en faisant sous-traiter la partie "point de restauration" par un autre script :?
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Avatar du membre
franco
Niveau 7
Niveau 7
Messages : 343
Enregistré le : lun. 03 oct. 2011 22:37
Localisation : Liévin
Status : Hors ligne

Re: [..] Création point de restauration : blocage GUI

#5

Message par franco »

Salut.

Désolé de l'attente, mais entre garder ma nièce, peindre les murs crépi de la véranda, vadrouiller partout... je n'ai pas eu le temps d'y revenenir. :mrgreen:
Tu peux contourner ça en faisant sous-traiter la partie "point de restauration" par un autre script
Si je comprends bien, je contourne en faisant un autre script, lié au script initial, que je compile et que je l'associe en faisant un fileinstall ?


Je pense que j'ai suivre mon idée : réduire la GUI dans la barre des tâches pendant la fonction avec apparition d'un traytip (ou autre).


Je me demande si, quand on réduit le programme (gui) dans la barre des tâches, on peut empêcher l'utilisateur de l'afficher lui-même, pendant que la fonction se termine.

Est-ce possible ?

Promis juré (pas craché, c'est dégueux :P ), je vous embêterai plus ensuite pour ce sujet :mrgreen:


@+
L'entraide, c'est mon dada ;)
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11818
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Création point de restauration : blocage GUI

#6

Message par Tlem »

Un SplashTextOn avec comme message :

Code : Tout sélectionner

Point de restauration en cours de création ... 
  Veuillez patienter quelques instants.
me semblerait tout indiqué. :roll:
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Création point de restauration : blocage GUI

#7

Message par jguinch »

C'est vrai qu'un splashtext conviendrait.
Tu peux aussi tout simplement désactiver la GUI et mettre un label "Veuillez patienter...", et une fois le point de restauration créé, suppression du label et réactivation de la GUI.
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Répondre