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 de Threads / communication inter-applications


Sujet :

C#

  1. #1
    Membre averti

    Homme Profil pro
    Développeur
    Inscrit en
    Avril 2011
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Ille et Vilaine (Bretagne)

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

    Informations forums :
    Inscription : Avril 2011
    Messages : 32
    Par défaut Problème de Threads / communication inter-applications
    Bonjour, je viens vous exposer un petit problème que je rencontre.

    J'ai deux applications. D'un coté un programme (une barre), installée sur la barre de tâche, et de l'autre mon programme principal.

    Ces deux applications communiques via des sockets. J'arrive pour le moment à afficher des informations de mon programme principal dans ma barre.

    En gros, il y a un compteur dans mon programme, que je partage avec ma barre.
    Celle-ci doit pouvoir mettre le compteur en pause.
    Pour celà, je transmet via une socket, l'information lors du clic a mon programme, qui va demander l'ouverture d'une fenetre "pause".

    Mais là se trouve le problème. Lorsque je test ce fameux clic, une erreur survient :
    Impossible d'instancier le contrôle ActiveX 'd27cdb6e-ae6d-11cf-96b8-444553540000', car le thread actuel n'est pas un thread cloisonné (STA, Single-Threaded Apartment)
    A la ligne suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    this.axShockwaveFlashCC = new AxShockwaveFlashObjects.AxShockwaveFlash();

    Sachant que :
    - J'ai un thread dans chacun des deux programmes, que j'ai cloisonné
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    this.listenThread.SetApartmentState(ApartmentState.MTA);
    (J'ai essayé aussi avec STA)

    - Lorsque je met le compteur en pause directement à partir de mon programme, je n'ai aucune erreur (et pourtant j'appelle la même fonction).

    - J'ai la ligne [STAThread] placée correctement


    Pourriez vous me donner un coup de pouce ?
    Merci d'avance et bonne journée.

  2. #2
    Membre éclairé Avatar de cs_ntd
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2006
    Messages
    598
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Etats-Unis

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

    Informations forums :
    Inscription : Décembre 2006
    Messages : 598
    Par défaut
    Ces deux applications communiques via des sockets
    OK

    Mais que vient faire ici le ActiveX ??

    Tu clique, lors de l'evenement du envoi mettons "PAUSE" via la socket, mais je ne vois pas ce que vient faire ActiveX ici... ni Shockwave d'ailleurs...

    Je pense que ton probleme dois plus ce situer au niveau de la récupération du clique, plus que de sa propagation, non ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Communication inter application
    Par aure298 dans le forum Plateformes (Java EE, Jakarta EE, Spring) et Serveurs
    Réponses: 4
    Dernier message: 04/08/2009, 21h57
  2. [Cluster] Communication inter-applications
    Par polo54 dans le forum Websphere
    Réponses: 3
    Dernier message: 21/05/2009, 00h35
  3. Communication inter application c#
    Par chental dans le forum C#
    Réponses: 6
    Dernier message: 20/03/2008, 17h00
  4. [gtkmm] communication inter application ?
    Par drKzs dans le forum GTK+ avec C & C++
    Réponses: 0
    Dernier message: 22/01/2008, 18h21
  5. communication inter application
    Par austin P. dans le forum Spring
    Réponses: 4
    Dernier message: 09/05/2007, 22h00

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