/// <summary>
        /// Wait for windows to install drivers for new device and when device become available.
        /// </summary>
        private void StartCheckingIfInstalled()
        {
            while (_requestStop == false)
            {
                IsInstalled = _WMIQuery.GetStatusLevel(PNPID);
                if (IsInstalled || PNPID == null)
                {
                    RequestStop();
                }
                else
                {
                    //Waiting for device to be installed
                }
                Thread.Sleep(1000);
            }

            if (IsInstalled == true)
            {
                //Device has been installed
                UpdateSetting();
                if (ApplyPatch)
                {
                    //apply patch to Realtek device, we do not care if it exists or not at this point
                    InstallFromCD rtl = new InstallFromCD();
                    rtl.InstallRealtekPatch();
                    ApplyPatch = false;
                }
            }
        }