Ich habe ein seltsames Verhalten bei meiner Applikation.
Für mich sieht es so aus als würde Excel an verschiedenen stellen im Code einfach abstürzen, wenn dann im weiteren Verlauf versucht wird auf Excel zuzugreifen kommt es zum Fehler "Der RPC-Server ist nicht verfügbar".
Ich starte bei Programmstart eine Excel-Instanz, diese halte ich mir zur gesamten Laufzeit offen. Ein Quit und ReleaseObject mache ich erst wenn ich mein Programm beende.
Zur Laufzeit habe ich eine Schleife, die verschiedenste Excel-Dateien öffnet ausliest etc. Das seltsame ist, dass die Exception an verschiedenen Stellen auftritt. Ich habe zum Debuggen eine Prozedur geschrieben, die diese Schleife Endlos durchläuft. Das interessante ist, manchmal läuft die Prozedur mehrmals ohne abzustürzen durch, in der Regel kommt es zum Absturz zwischen 2 und bis zu 20 Durchläufen.
Gibt es irgendwelche bekannten Gründe wieso sich Excel verabschiedet obwohl ich das Objekt nicht freigebe?
Man kann das ganze auch simulieren indem man während das Programm läuft den Excel-Prozess über den Taskmanager beendet.
Für mich sieht es so aus als würde Excel an verschiedenen stellen im Code einfach abstürzen, wenn dann im weiteren Verlauf versucht wird auf Excel zuzugreifen kommt es zum Fehler "Der RPC-Server ist nicht verfügbar".
Ich starte bei Programmstart eine Excel-Instanz, diese halte ich mir zur gesamten Laufzeit offen. Ein Quit und ReleaseObject mache ich erst wenn ich mein Programm beende.
Zur Laufzeit habe ich eine Schleife, die verschiedenste Excel-Dateien öffnet ausliest etc. Das seltsame ist, dass die Exception an verschiedenen Stellen auftritt. Ich habe zum Debuggen eine Prozedur geschrieben, die diese Schleife Endlos durchläuft. Das interessante ist, manchmal läuft die Prozedur mehrmals ohne abzustürzen durch, in der Regel kommt es zum Absturz zwischen 2 und bis zu 20 Durchläufen.
Gibt es irgendwelche bekannten Gründe wieso sich Excel verabschiedet obwohl ich das Objekt nicht freigebe?
Man kann das ganze auch simulieren indem man während das Programm läuft den Excel-Prozess über den Taskmanager beendet.