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

Delphi Discussion :

ActiveX et Thread


Sujet :

Delphi

  1. #1
    Membre Expert
    Avatar de Clorish
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 474
    Par défaut ActiveX et Thread
    Bonjour

    Je suis en traint de plancher sur l'integration d'une application au sein d'une page web ou autres application.

    Suivant l'exemple d'une ancienen application utilisée, je pensait transformer mon application en activeX (ocx).

    J'ai donc developpé une bibliotheque activeX avec une active form qui me sert de base a mon application.

    Pour le reste, je considere mon active form comme le TForm principal d'une applciation classique.

    Tout samble fonctionner a peu pres comme il fait mise a part que j'ai besoin de boucler sur une fonction sans que cela interagisse sur le deroulemetn de l'application.
    C'est une applciation 3D avec rendu graphique.
    J'ai donc besoin de faire appel a la boucle de rendu en permanance.

    Sous un application standard, soit je l'inclut dans un TThread soit je la met dans une boucle infinie interompue par un application.processmessage, soit (le cas courrant) j'utilise l'event OnIdle d'un TApplicationMessage.

    Toutes ces techniques ne fonctionnent pas ... et j'aurais besoin d'avoir vos avis la dessus.

    Dernierement j'ai teste la creation d'un thread Win32 (CreateThread) mais j'ai des erreur de violation d'acces et autres problemes d'execution ....

    Merci d'avance

  2. #2
    Rédacteur

    Profil pro
    Inscrit en
    Avril 2007
    Messages
    182
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2007
    Messages : 182
    Par défaut Synchronize
    que veut dire exactement "ces techniques ne fonctionnent pas" ? Quels sont les symptômes ?

    Si il y a des problèmes type des violations d'accès, est-ce que le thread secondaire utilise bien la méthode Synchronize pour les affichages? Tout ce qui concerne la VCL doit absolument être executé dans le thread principal, cf l'aide sur Tthread.Synchronize.

    Bruno
    mon blog - mon site web

  3. #3
    Membre Expert
    Avatar de Clorish
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 474
    Par défaut
    - Le TThread ne semble pas du tout s'executer.
    - Le application.processMessage ne debloque pas une boucle de rendue infinie "while true" dans le cadre d'une application mono thread
    - Le TApplicationEvent.OnIdle ne s'execute pas.

    J'ai fini par regler le probleme via un thread win32 (createThread) et en corrigeant la violation d'acces par un "coinitialize" que j'avais oublié.

    sinon la boucle de rendu en question ne s'execute que sur des fonction d'interfaces COM chargee depuis la dll proprietaire des APIS 3D.

    C'est lourd mais bon ca a l'avantage de marcher quand meme.
    Si une solution autre existe je suis preneur

    Sinon je me penche aussi sur la solution OLE qui est plus "standard" peut etre vu que OOo Impress ne semble pas accepter l'insertion d'activeX mais accepte les Objets OLE.

    La encore j'ai des soucis car si j'ajoute un objet automation a mon application pour la piloter, j'ai bien l'application qui se lance lors du chargement de l'objet mais elle s'execute de maniere independante et non au sein de l'application hote (comme adobe PDF dans une page web ....)
    Quand on manipule Excel ou Word ca marche

Discussions similaires

  1. Réponses: 0
    Dernier message: 26/02/2013, 12h54
  2. Réponses: 6
    Dernier message: 08/11/2010, 08h25
  3. Réponses: 1
    Dernier message: 17/03/2008, 20h29
  4. Tri multi-threadé
    Par Tifauv' dans le forum C
    Réponses: 8
    Dernier message: 28/06/2007, 09h00
  5. [Kylix] Pb de Thread !!
    Par Anonymous dans le forum EDI
    Réponses: 1
    Dernier message: 25/04/2002, 13h53

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