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

Windows Forms Discussion :

Clipboard et Background Worker


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Mai 2005
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 11
    Par défaut Clipboard et Background Worker
    Bonjour,

    Je cherche à savoir s'il existe un moyen d'utiliser le presse-papier dans un traitement d'un backgroundworker.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    private void bgwExp_DoWork(object sender, DoWorkEventArgs e)
    {
           ApartmentState state = Thread.CurrentThread.ApartmentState;
           Clipboard.SetDataObject("copier-coller");
    }
    Le problème ici étant que le thread du backgroundworker est en mode MTA (state = ApartmentState.MTA).
    L'appel au clipboard lance une excepion :
    "Le thread actuel doit être en mode STA (Single Thread Apartment) avant que des appels OLE puissent être effectués. Assurez-vous que votre fonction Main est marquée comme STAThreadAttribute."

    Le main est bien sûr en mode STA. Et j'ai aussi tenté de changé le mode, mais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Thread.CurrentThread.ApartmentState(ApartmentState.STA)
    lance aussi une exception :
    "Impossible de définir l'état de cloisonnement COM spécifié."

    Donc existe-t-il une manière détournée permettant d'utiliser le clipborad dans le background worker ou non ?

    Merci

  2. #2
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Par défaut
    salut

    il me semble que quand tu crées un thread, tu peux définir son mode... pour le backgroundWorker, j'ai plus en tete si cela est également possible

    Si ce n'est pas le cas, peut-etre alors faut-il regarder du coté des threads directement

Discussions similaires

  1. BackGround Worker argument
    Par Thesum dans le forum VB.NET
    Réponses: 1
    Dernier message: 05/12/2008, 13h28
  2. Background Worker / Problème affichage image de progression
    Par Saten dans le forum Windows Forms
    Réponses: 12
    Dernier message: 02/12/2008, 13h32
  3. Gérer les exceptions d'un Background worker
    Par Nixar dans le forum Windows Forms
    Réponses: 1
    Dernier message: 13/08/2008, 22h31
  4. Connexion LDAP et Background worker
    Par javaboy dans le forum VB.NET
    Réponses: 2
    Dernier message: 21/05/2008, 09h17
  5. arret Background worker thread
    Par ricky78 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 06/02/2007, 12h15

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