den Acrobat Reader. Da dieser nicht offen bleiben soll, beende
ich ihn, indem ich den Prozess einfach beende. Problem an der
Sache ist, dass dann natürlich auch der Speicher nicht
freigegeben wird, der vom Reader reserviert wurde. Wenn ich
die ganze Sache nu öfter mache, wird der Speicher vollgemüllt,
was definitiv ein Problem ist.
Hallo Peter.
Wie beendest Du denn den Prozess?
Verwendest Du ein spezielles Control für den Reader(was am einfachsten nd am sichersten wäre) oder startest Du einfach nur die *.pdf Datei?
Was eigentlich funktionieren sollte, das wäre ein Shell über das Windowsapi auf die Anwendung „Acrobat Reader.exe“ mit der Dateiangabe des zu öffnenden Dokuments als Parameter. Es sollte dann ein Handle geben (aber ich müßte selber noch mal nachschauen, um es genau zu wissen), wie es sich zur Beendigung des Reader verwenden läßt.
Was auch funktionieren sollte, das ist ein Methode wie sie Strg-Alt-Entf anbietet, heiß es Taskmanager??
Nur ist dann dabei das Problem, das man nicht so einfach feststellen kann, welcher Thread vom eigenen Programm ausgelöst wurde.
Die Nachrichtenbehandlung wird leider von den verschiedenen Programmen unterschiedlich ausgeführt.
Wenn ein Programm regulär beendet werden soll, aber nicht vollständig entladen wird, dann ist es ein Programmfehler, also dann kannst Du nichts dafür.
Dem Windows würde ich zunächst „keine Schuld“ geben.
Schau doch mal nach genauen Beispielen zum Thema API-Calls oder „Windows-Api“ im Internet nach. Ich finde da mehr als genug.
MfG
Matthias