Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Multiples instances Active X en VB

6 réponses
Avatar
unti_coco
J'ai un programme EXE (Prog) qui a en référence deux Active X (A et B)
qui ont chacun une dll (X et Y) en référence.

Prog (Event msmq et il dirige le message vers A ou vers B)
- A
- X
- B
- Y

Je veux partir 5 fois le programme pour qu'il puisse traiter 5
demandes en même temps. Exemple trois demandes de type A et deux
demandes de type B. Le problème que j'ai c'est que même si je parts 5
programmes j'ai toujours juste soit 1 A ou 1 B qui part et en plus
l'un après l'autre.

Quels sont les différentes étapes a suivre pour que ça fonctionne
correctement.

6 réponses

Avatar
Jean-Marc
"Ric" a écrit dans le message de
news:
J'ai un programme EXE (Prog) qui a en référence deux Active X (A et B)
qui ont chacun une dll (X et Y) en référence.

Prog (Event msmq et il dirige le message vers A ou vers B)
- A
- X
- B
- Y

Je veux partir 5 fois le programme pour qu'il puisse traiter 5
demandes en même temps. Exemple trois demandes de type A et deux
demandes de type B. Le problème que j'ai c'est que même si je parts 5
programmes j'ai toujours juste soit 1 A ou 1 B qui part et en plus
l'un après l'autre.




Hello,

Peux tu expliquer avec un exemple ?
Quand tu écris 'Event msmq', s'agit il de MQ Series ?

--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
Avatar
ng
Salut,

Pour faire ca (ie une sorte de multithread en vb) il faut utiliser un exe
activex (et non une dll) et cocher "thread par objet" dans modèle de thread
dans les propriétés du projet.

On pourra alors faire plusieurs traitement en même temps.

--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/

Ric wrote:
J'ai un programme EXE (Prog) qui a en référence deux Active X (A et B)
qui ont chacun une dll (X et Y) en référence.

Prog (Event msmq et il dirige le message vers A ou vers B)
- A
- X
- B
- Y

Je veux partir 5 fois le programme pour qu'il puisse traiter 5
demandes en même temps. Exemple trois demandes de type A et deux
demandes de type B. Le problème que j'ai c'est que même si je parts 5
programmes j'ai toujours juste soit 1 A ou 1 B qui part et en plus
l'un après l'autre.

Quels sont les différentes étapes a suivre pour que ça fonctionne
correctement.


Avatar
Ric
Excellent !

J'utilise effectivement un active X qui fait référence a une dll. Donc mon
active x doit être "Thread Per Object". Ça m'amène une autre question, ma dll
doit être "Single Thread" ou "Apartment Thread" ???

J'ai pas plus de manoeuvre que ça a faire dans mon code au autre ???

Merci beaucoup pour l'information !!!

En passant, "Event MSMQ" c'est un évènement pour Microsoft Message Queuing
(MSMQ)
(http://www.microsoft.com/windows2000/technologies/communications/msmq/default.asp)

"ng" a écrit :

Salut,

Pour faire ca (ie une sorte de multithread en vb) il faut utiliser un exe
activex (et non une dll) et cocher "thread par objet" dans modèle de thread
dans les propriétés du projet.

On pourra alors faire plusieurs traitement en même temps.

--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/

Ric wrote:
> J'ai un programme EXE (Prog) qui a en référence deux Active X (A et B)
> qui ont chacun une dll (X et Y) en référence.
>
> Prog (Event msmq et il dirige le message vers A ou vers B)
> - A
> - X
> - B
> - Y
>
> Je veux partir 5 fois le programme pour qu'il puisse traiter 5
> demandes en même temps. Exemple trois demandes de type A et deux
> demandes de type B. Le problème que j'ai c'est que même si je parts 5
> programmes j'ai toujours juste soit 1 A ou 1 B qui part et en plus
> l'un après l'autre.
>
> Quels sont les différentes étapes a suivre pour que ça fonctionne
> correctement.





Avatar
Ric
J'ai une autre question. Mon Active X et ma DLL, dans le projet, est-ce
qu'ils doivent, dans le StartMode être "StandAlone" ou "ActiveX Component" ???

Merci !!!!!

"ng" a écrit :

Salut,

Pour faire ca (ie une sorte de multithread en vb) il faut utiliser un exe
activex (et non une dll) et cocher "thread par objet" dans modèle de thread
dans les propriétés du projet.

On pourra alors faire plusieurs traitement en même temps.

--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/

Ric wrote:
> J'ai un programme EXE (Prog) qui a en référence deux Active X (A et B)
> qui ont chacun une dll (X et Y) en référence.
>
> Prog (Event msmq et il dirige le message vers A ou vers B)
> - A
> - X
> - B
> - Y
>
> Je veux partir 5 fois le programme pour qu'il puisse traiter 5
> demandes en même temps. Exemple trois demandes de type A et deux
> demandes de type B. Le problème que j'ai c'est que même si je parts 5
> programmes j'ai toujours juste soit 1 A ou 1 B qui part et en plus
> l'un après l'autre.
>
> Quels sont les différentes étapes a suivre pour que ça fonctionne
> correctement.





Avatar
ng
Salut,

Dans le cas d'une DLL, le code sera executé dans le thread de l'appli.
Il faut utiliser un activex pour faire du multithreading.

--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/

Ric wrote:
Excellent !

J'utilise effectivement un active X qui fait référence a une dll.
Donc mon active x doit être "Thread Per Object". Ça m'amène une autre
question, ma dll doit être "Single Thread" ou "Apartment Thread" ???

J'ai pas plus de manoeuvre que ça a faire dans mon code au autre ???

Merci beaucoup pour l'information !!!

En passant, "Event MSMQ" c'est un évènement pour Microsoft Message
Queuing (MSMQ)
(http://www.microsoft.com/windows2000/technologies/communications/msmq/default.asp)

"ng" a écrit :

Salut,

Pour faire ca (ie une sorte de multithread en vb) il faut utiliser
un exe activex (et non une dll) et cocher "thread par objet" dans
modèle de thread dans les propriétés du projet.

On pourra alors faire plusieurs traitement en même temps.

--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/

Ric wrote:
J'ai un programme EXE (Prog) qui a en référence deux Active X (A et
B) qui ont chacun une dll (X et Y) en référence.

Prog (Event msmq et il dirige le message vers A ou vers B)
- A
- X
- B
- Y

Je veux partir 5 fois le programme pour qu'il puisse traiter 5
demandes en même temps. Exemple trois demandes de type A et deux
demandes de type B. Le problème que j'ai c'est que même si je parts
5 programmes j'ai toujours juste soit 1 A ou 1 B qui part et en plus
l'un après l'autre.

Quels sont les différentes étapes a suivre pour que ça fonctionne
correctement.






Avatar
ng
>Mon Active X et ma DLL


Comment ca je croyais que tu avais remplacé ta dll par un exe activex ?
Sinon ils doivent etre des activex component (c'est ton prog exe qui se
charge de les "lancer")

--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/

Ric wrote:
J'ai une autre question. Mon Active X et ma DLL, dans le projet,
est-ce qu'ils doivent, dans le StartMode être "StandAlone" ou
"ActiveX Component" ???

Merci !!!!!

"ng" a écrit :

Salut,

Pour faire ca (ie une sorte de multithread en vb) il faut utiliser
un exe activex (et non une dll) et cocher "thread par objet" dans
modèle de thread dans les propriétés du projet.

On pourra alors faire plusieurs traitement en même temps.

--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/

Ric wrote:
J'ai un programme EXE (Prog) qui a en référence deux Active X (A et
B) qui ont chacun une dll (X et Y) en référence.

Prog (Event msmq et il dirige le message vers A ou vers B)
- A
- X
- B
- Y

Je veux partir 5 fois le programme pour qu'il puisse traiter 5
demandes en même temps. Exemple trois demandes de type A et deux
demandes de type B. Le problème que j'ai c'est que même si je parts
5 programmes j'ai toujours juste soit 1 A ou 1 B qui part et en plus
l'un après l'autre.

Quels sont les différentes étapes a suivre pour que ça fonctionne
correctement.