/// <summary>
        /// The main entry point for the application.
        /// </summary>
        static void Main(string[] args)
        {
#if DEBUG
            if (args.Length == 0)
            {
                initializeProcess.UpdateConfig();

                NotificationClientService service = new NotificationClientService();

                service.Start(null);
                Thread.Sleep(Timeout.Infinite);
            }
            else
            {
                NewInstanceMain(args[0], args[1], args[2].ToInt());
                Application.ApplicationExit += new EventHandler(Application_ApplicationExit);
                Application.Run();
            }
#else
            if (args.Length == 0)
            {
                initializeProcess.UpdateConfig();

                ServiceBase[] ServicesToRun;
                ServicesToRun = new ServiceBase[]
                {
                    new NotificationClientService()
                };
                ServiceBase.Run(ServicesToRun);
            }
            else
            {
                NewInstanceMain(args[0], args[1], args[2].ToInt());
                Application.ApplicationExit += new EventHandler(Application_ApplicationExit);
                Application.Run();
            }
#endif
        }
        /// <summary>
        /// method to explicitly invoke the service for multiple databases
        /// </summary>
        /// <param name="connString"></param>
        /// <param name="DBName"></param>
        private static void NewInstanceMain(string connString, string DBName, int oUID)
        {
            NotificationClientService service = new NotificationClientService(connString, DBName, oUID);

            service.Start(null);
        }