IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

[Problème] Interruption de processus bloquant C++ Builder


Sujet :

C++

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2015
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2015
    Messages : 6
    Par défaut [Problème] Interruption de processus bloquant C++ Builder
    Bonjour !

    Je travaille sur Windows et sur le logiciel C++ Builder. Je travaille actuellement sur la création d'un logiciel pour mon entreprise, mais j'ai un soucis auquel je ne trouve pas vraiment de solutions. Je m'explique :
    J'importe un fichier au format DXF et j'affiche une fenêtre de chargement pendant qu'il importe. Le soucis est le suivant : le processus qui gère cela est bloquant. Ce qui est balo, parce que du coup, impossible de cliquer sur le bouton annuler...

    Je sais que je devrais utiliser les Threads, mais au vu de la tête des méthodes que j'aurais à faire dans mes threads, j'aimerais trouver une autre solution ! J'ai vu notamment la fonction ProcessMessages qui rend la main à l'application de base, mais je n'arrive pas à l'utiliser correctement...
    Je me demande donc si il y a un moyen simple et sans thread de pouvoir cliquer sur le bouton annuler pour qu'il me change un boolean qui me fait sortir de ma fonction ? Je sais notamment que le ShowModal() permet en cliquant sur un bouton bien paramétré de quiter la fenetre, mais il bloque aussi l'exécution, ce qui n'est donc pas vraiment une solution en soi.

    J'ai aussi essayé les threads en créant une nouvelle fenêtre qui exécute un thread dans le but de pouvoir annuler si l'on clique sur le bouton de la fenêtre. Le soucis est que le thread bloque la précédente application, cela signifie que si je clique sur annuler, l'annulation fonctionne, mais si je ne fit rien, il ne se passe rien de plus...

    Je vous remercie d'avance !
    Ps: Je suis désolé de ne pas pouvoir mettre de code, mais au vu du fait que le logiciel n'est pas libre je n'ai pas l'autorisation de divulguer du code sur internet :/

  2. #2
    Expert éminent

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 202
    Par défaut
    Toute interface graphique repose (implicitement ou non) sur le fait que le dessin est effectué dans un thread indépendant.
    L'objectif, c'est de permettre de continuer à dessiner et à lire les événements pendant le calcul.

    Au dela, je ne connais pas C++ builder en particulier

Discussions similaires

  1. Réponses: 0
    Dernier message: 24/03/2013, 23h30
  2. Processus bloquant un fichier
    Par KORTA dans le forum Windows XP
    Réponses: 8
    Dernier message: 04/09/2012, 12h55
  3. A propos de l'interruption de processus
    Par tsing dans le forum Administration système
    Réponses: 5
    Dernier message: 08/11/2006, 09h14
  4. Réponses: 2
    Dernier message: 21/01/2005, 12h55
  5. Réponses: 1
    Dernier message: 29/10/2003, 12h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo