Zombie processes after xlsread/write
5 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Every time I execute a line with either xlsread or xlswrite, Windows XP creates a new EXCEL process. After a while, the system stops working because there are too many processes.
How do I find and kill these processes from within Matlab? I can do it manually, but it's a pain.
Jim Brown
1 commentaire
Walter Roberson
le 16 Juin 2012
Image Analyst has posted ActiveX code showing how to replace multiple xlsread / xlswrite calls with opening the engine once, doing the required activity, and then closing the engine.
Réponses (1)
Image Analyst
le 16 Juin 2012
xlsread() and xlswrite() should shut down Excel when they're done. If they don't, then contact the Mathworks or check your Excel options. Maybe some Excel option is prompting you for something but you don't see it because those functions operate with Excel.visible = false. But like Walter said if you want to write out stuff in several calls you definitely DON'T want to use xlswrite() because it will be very very slow because it has to launch, write, and shut down Excel each time, which is very time consuming. You want to learn ActiveX. Search for my code. It's not that hard and gives you so much more flexibility for things like formatting cells (widths, fonts, borders, etc.).
0 commentaires
Voir également
Catégories
En savoir plus sur ActiveX dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!