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

Visual C++ Discussion :

[COM] Threading Model Excel


Sujet :

Visual C++

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    20
    D�tails du profil
    Informations personnelles :
    �ge : 39
    Localisation : Royaume-Uni

    Informations forums :
    Inscription : Avril 2008
    Messages : 20
    Par d�faut [COM] Threading Model Excel
    Bonjour,

    J'ai un composant COM in-process (une dll) que j'ai cree a l'aide d'ATL. Le threading model de ce composant est un STA.

    Le client est un module VBA dans un add-in Excel. L'idee c'est d'utiliser les fonctions c++ du composant directement depuis Excel, avec une couche VBA
    servant de wrapper. Ca marche bien mais j'ai une question concernant l'appel des fonctions entre le client VBA et le composant C++.
    D'apres ce que j'ai compris, si le composant et le client on le meme threading model, les appels des fonctions sont fait directement. Si ils sont differents, ils passent via les proxy/stub. Donc je voudrais connaitre le threading model d'Excel, pour savoir si mes appels sont faits directement ou si ils passent via la dll de proxy/stub generee par ATL ? Est ce que le threading model souhaite pour le client doit directement etre specifie dans un module VBA ? ou y en a il un par defaut ?

    Merci d'avance pour vos reponses !

  2. #2
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    La r�ponse est simple: Excel peut �tre utilis� ou contenir des objets OLE, et OLE ne marche qu'en STA.

    D'une mani�re g�n�rale, la plupart des objets et applications Microsoft marchent en STA, y compris le shell. Parmi les exceptions figurent les IconHandlers, qui peuvent �tre free-thread�s (ThreadingModel=Both, utilisent le Free-Threaded Marshaller), et bien s�r les streams utilis�s lors du marshalling.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    20
    D�tails du profil
    Informations personnelles :
    �ge : 39
    Localisation : Royaume-Uni

    Informations forums :
    Inscription : Avril 2008
    Messages : 20
    Par d�faut
    Merci beaucoup! C'est bon a savoir

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Recup�rer valeur des ports COM (rs232) dans excel
    Par Dam1988 dans le forum Macros et VBA Excel
    R�ponses: 3
    Dernier message: 20/08/2010, 00h02
  2. Precision d'une Assembly .Net (COM) modifi�e par EXCEL
    Par Bertrand Larat dans le forum Windows Forms
    R�ponses: 0
    Dernier message: 18/12/2008, 17h18
  3. probl�me de Threads avec Excel
    Par ooxoo dans le forum MFC
    R�ponses: 3
    Dernier message: 15/05/2008, 22h55
  4. lancer un modele excel en vba
    Par benoit_iund dans le forum VBA Access
    R�ponses: 3
    Dernier message: 13/06/2007, 11h17
  5. [VBA-E] Thread VBA Excel
    Par mimic50 dans le forum Macros et VBA Excel
    R�ponses: 3
    Dernier message: 02/02/2007, 17h35

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