Ik probeer om een (tab-delimited) bestand dat ik genereer met een Matlab .m-script via een shell-commando in Excel te openen. Ik heb nu twee alternatieven:
De aanroep van system() werkt: Excel wordt gestart en het bestand opent. Maar.... het Matlab-script blijft hangen op deze aanroep totdat Excel wordt gesloten. Op zich logisch, omdat system() wordt geacht een resultaat terug te geven dat mij verder niet interesseert.
Mijn tweede alternaties, winopen(), doet het op zich ook, maar alleen met bepaalde bestandsextenties. Als ik een .doc, .xls, .txt, whatever loslaat op deze functie gaat het prima. Op mijn PC heb ik .lvm ook met Excel geassocieerd, dus bij een dubbelklik in de explorer opent dat netjes. Matlab knalt er echter uit met de onzinnige melding:
.
Het is even geen optie om de output-bestanden te hernoemen. Matlab moet dit ook gewoon kunnen wat mij betreft
.
Samenvattend: hoe laat ik een willekeurig bestand openen vanuit een Matlab .m-script in het programma dat er mee geassocieerd is in Windows, zonder dat mijn script wacht op het resultaat van die aanroep?
code:
1
2
| system([directory '\results.lvm']); winopen([directory '\results.lvm']); |
De aanroep van system() werkt: Excel wordt gestart en het bestand opent. Maar.... het Matlab-script blijft hangen op deze aanroep totdat Excel wordt gesloten. Op zich logisch, omdat system() wordt geacht een resultaat terug te geven dat mij verder niet interesseert.
Mijn tweede alternaties, winopen(), doet het op zich ook, maar alleen met bepaalde bestandsextenties. Als ik een .doc, .xls, .txt, whatever loslaat op deze functie gaat het prima. Op mijn PC heb ik .lvm ook met Excel geassocieerd, dus bij een dubbelklik in de explorer opent dat netjes. Matlab knalt er echter uit met de onzinnige melding:
Gelul??? There is no application associated with the given file name extension.
Het is even geen optie om de output-bestanden te hernoemen. Matlab moet dit ook gewoon kunnen wat mij betreft
Samenvattend: hoe laat ik een willekeurig bestand openen vanuit een Matlab .m-script in het programma dat er mee geassocieerd is in Windows, zonder dat mijn script wacht op het resultaat van die aanroep?
Zo scherp als een voetbal!