Using Process.Kill() is not the proper way to shutdown an application.
You may not be properly releasing all of the instantiated COM objects.
Calling a "Quit" or "Exit" method followed by a "Dispose" method on a COM object will not free up all of the references.
See
How to Release COM Interop Objects so the Called Program Can Exit[
^]
oApp.Quit();
Application.DoEvents();
while (System.Runtime.InteropServices.Marshal.ReleaseComObject(oApp) != 0) {
Application.DoEvents();
}
oApp = null;
GC.Collect();
GC.WaitForPendingFinalizers();