public void Release() { try { if (_processSync != null) { _processSync.ReleaseMutex(); } _processSync = null; } catch { } if (_owned) { _owned = false; } try { if (generatedTempFilename != null) { File.Delete(generatedTempFilename); } } catch { } if (proxy != null) { try { proxy.Stop(); } catch { } try{ proxy.Dispose(); } catch { } } proxy = null; }