1 van 1

extern programma afsluiten en opslaan

Geplaatst: za 12 dec 2015, 12:37
door In physics I trust
Hey,
 
Ik zou graag openstaande MathCad-bestanden opslaan en sluiten. MathCad heeft echter geen API, dus ik kan dit niet via een Interop bewerkstelligen. Voorlopig probeer ik dit op te lossen met SendKeys.Wait, maar dat is niet robuust aangezien de duur om het bestand op te slaan variabel is en je dus niet goed weet wanneer je de keystrokes kan sturen.

Heeft iemand een idee hoe je dit probleem kan oplossen? Eventueel via een Windows API functie?
 
Alvast bedankt,

Re: extern programma afsluiten en opslaan

Geplaatst: za 12 dec 2015, 13:17
door Benm
Kun je niet gewoon een remote administration tool gebruiken?

Re: extern programma afsluiten en opslaan

Geplaatst: za 12 dec 2015, 13:31
door In physics I trust
Hmm, geen idee hoe dat inpast. In een breder kader maakt deze handeling deel uit van het volgende proces (met name stap 3):
1) Genereer xml-file
2) Open Mathcad xml-file (dit lanceert een herberekening en genereert resultaten)
3) Sluit Mathcad  xml-file (zodat de resultaten ook effectief worden opgeslagen in de xml-file
4) Lees de resultaten uit

Re: extern programma afsluiten en opslaan

Geplaatst: za 12 dec 2015, 14:18
door Flisk
Misschien wat omslachtig, maar je kan met de Robot klasse van java a.d.h.v. pixel kleuren detecteren wanneer het tijd is voor de volgende keystroke. Gaat enkel makkelijk werken als er, bij elke stap waarvan je de tijd niet weet, op vaste plekken op het scherm visueel iets te zien is.

EDIT:

Of misschien met Mathcad's Automation interface? Wel geen idee hoe dat precies werkt.

Re: extern programma afsluiten en opslaan

Geplaatst: zo 13 dec 2015, 17:13
door In physics I trust
Die had ik al gezien, maar dat is een beetje een vreemd verhaal. Je kan daarmee eigenlijk via een openstaand rekenblad parameters aanpassen en de resultaten lezen, maar niet de bestanden effectief opslaan.
 
Zal eens zien naar dat Robot-equivalent in VB.NET.
 
Bedankt!