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

libérer un processus

2 réponses
Avatar
Pascal
bonsoir,
je remarque a chaque fois que je fais appel SET......
dans ce cas bien précis , le gestionnaire de tache ouvre un processus
WINWORD.exe, jusque là rien d'anormal!
le fait de libérer l'objet ne libère pas ce processus!!
si je fais le test 10 fois(relancer 10 le programme) je me retrouve avec 10
processus winword !!!!!
Question: comment puis-je libérer ce processus qui ne fais que freiner mon
système

merci de votre aide
Pascal


**********************************************************************
Dim swd As Object
Set swd = GetObject(, "Word.Application")
....................
Set swd = Nothing

2 réponses

Avatar
Jean-marc
Pascal wrote:
bonsoir,
je remarque a chaque fois que je fais appel SET......
dans ce cas bien précis , le gestionnaire de tache ouvre un processus
WINWORD.exe, jusque là rien d'anormal!
le fait de libérer l'objet ne libère pas ce processus!!
si je fais le test 10 fois(relancer 10 le programme) je me retrouve
avec 10 processus winword !!!!!
Question: comment puis-je libérer ce processus qui ne fais que
freiner mon système

merci de votre aide
Pascal


**********************************************************************
Dim swd As Object
Set swd = GetObject(, "Word.Application")
....................
Set swd = Nothing



Le fait de faire swd=Nothing ne libère pas le processus.
Ca met la variable à Null, et c'est tout.

Une fois l'objet créé, il faut utiliser l'une de ces méthodes
pour quitter proprement.
Dans le cas de Word, c'est "Quit".

Donc si tu fais:

dim wd as Object

set wd = CreateObject("Word.application")
' etc.
wd.Quit ' <== ICI TU TERMINES LE PROCESS
set wd = Nothing

Tu noteras que dans les exemples de code précédent,
il était toujours fait usage de wd.Quit, et ce
pour une bonne raison :-)


--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
FAQ VB: http://faq.vb.free.fr/
mailto: remove '_no_spam_' ;
Avatar
Pascal
bonsoir Jean-Marc
oui oui je te jure que c'est noté, gravé et devenu indélébile
merci mille fois
Pascal


"Jean-marc" a écrit dans le message
de news: 472ca567$0$22309$
Pascal wrote:
bonsoir,
je remarque a chaque fois que je fais appel SET......
dans ce cas bien précis , le gestionnaire de tache ouvre un processus
WINWORD.exe, jusque là rien d'anormal!
le fait de libérer l'objet ne libère pas ce processus!!
si je fais le test 10 fois(relancer 10 le programme) je me retrouve
avec 10 processus winword !!!!!
Question: comment puis-je libérer ce processus qui ne fais que
freiner mon système

merci de votre aide
Pascal


**********************************************************************
Dim swd As Object
Set swd = GetObject(, "Word.Application")
....................
Set swd = Nothing



Le fait de faire swd=Nothing ne libère pas le processus.
Ca met la variable à Null, et c'est tout.

Une fois l'objet créé, il faut utiliser l'une de ces méthodes
pour quitter proprement.
Dans le cas de Word, c'est "Quit".

Donc si tu fais:

dim wd as Object

set wd = CreateObject("Word.application")
' etc.
wd.Quit ' <== ICI TU TERMINES LE PROCESS
set wd = Nothing

Tu noteras que dans les exemples de code précédent,
il était toujours fait usage de wd.Quit, et ce
pour une bonne raison :-)


--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
FAQ VB: http://faq.vb.free.fr/
mailto: remove '_no_spam_' ;