Exemple #1
0
        static void StartApplication()
        {
            frmMainMenu mainTemp = null;

            try
            {
                //clsBarcodeReader.Instance.InitialComponent();

                //ServiceProvider.Instance.Connect();
                //fMain = new frmMainMenu();
                //Application.Run(fMain);
                using (frmMainMenu fMain = new frmMainMenu())
                {
                    //GC.ReRegisterForFinalize(fMain);

                    mainTemp = fMain;
                    Application.Run(fMain);

                    //ServiceProvider.Instance.Disconnect();
                    //clsBarcodeReader.Instance.Release();

                    mainTemp = null;
                    GC.SuppressFinalize(fMain);

                    GC.Collect();
                    GC.WaitForPendingFinalizers();
                }


                if (mainTemp != null)
                {
                    FullScreenHandle.StopFullScreen(mainTemp);
                    GC.SuppressFinalize(mainTemp);

                    GC.Collect();
                    GC.WaitForPendingFinalizers();
                }

                Application.Exit();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
                if (mainTemp != null)
                {
                    FullScreenHandle.StopFullScreen(mainTemp);
                    GC.SuppressFinalize(mainTemp);
                }

                GC.Collect();
                GC.WaitForPendingFinalizers();

                Application.Exit();
            }
        }
 private void frmReplenish_Closing(object sender, CancelEventArgs e)
 {
     FullScreenHandle.StopFullScreen(this);
 }