private void exitProgram() { RegistrationServer.close(); if (webServer != null) { webServer.Stop(); } for (int i = 0; i < WebSocketPool.Count; i++) { WebSocketPool.Values.ElementAt(i).Close(); } if (keyboardHook != null) { keyboardHook.UninstallHook(); } if (flowMeasureDevicePool != null) { flowMeasureDevicePool.Dispose(); } Application.Current.Shutdown(); }