Example #1
0
        public LoginResponseStateEnum Login(string username, string password)
        {
            if (!IsConnected)
            {
                throw new InvalidOperationException("Client was not connected.");
            }

            LoginResponseArgs      response = mProxy.Login(new LoginRequestArgs(username, password));
            LoginResponseStateEnum result   = LoginResponseStateEnum.AccessDenied;

            if (response != null)
            {
                result = response.ResponseState;
                if (result == LoginResponseStateEnum.AccessGranted)
                {
                    mProxy.IsAuthenticated = true;
                    mServiceConfig         = mProxy.ClientGetConfiguration();
                    mCursorWithIds.Clear();
                    foreach (CursorInfo info in mServiceConfig.Cursors)
                    {
                        mCursorWithIds[info.CursorId] = info.Cursor;
                    }
                    pbClient.Size = mServiceConfig.DesktopSize;
                    DrawInitialBlackBackground();
                }
            }
            return(result);
        }
Example #2
0
        private bool HandleLoginResult(RemoteDesktopClientForm clientForm, LoginResponseStateEnum loginResult)
        {
            bool result = false;

            switch (loginResult)
            {
            case LoginResponseStateEnum.AccessDenied:
                MessageBox.Show(clientForm, "Unable to authenticate. Access denied.", Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
                break;

            case LoginResponseStateEnum.AccessGranted:
                result = true;
                clientForm.StartEventPump();
                break;

            case LoginResponseStateEnum.ServiceBusy:
                MessageBox.Show(clientForm, "Unable to authenticate. Service is busy.", Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
                break;

            case LoginResponseStateEnum.ServiceInactive:
                MessageBox.Show(clientForm, "Unable to authenticate. Service is inactive.", Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
                break;
            }

            return(result);
        }
Example #3
0
        /// <summary>
        /// Logins with the specified username and password.
        /// </summary>
        /// <param name="username">The username.</param>
        /// <param name="password">The password.</param>
        /// <returns></returns>
        /// <exception cref="System.InvalidOperationException">Client was not connected.</exception>
        public LoginResponseStateEnum Login(string username, string password)
        {
            LoginResponseStateEnum result = rdpClient.Login(username, password);

            if (result == LoginResponseStateEnum.AccessGranted)
            {
                mLastUsername = username;
                mLastPassword = password;
                fullScreenToolStripMenuItem.Enabled    = true;
                pauseToolStripMenuItem.Enabled         = true;
                setQualityToolStripMenuItem.Enabled    = true;
                refreshScreenToolStripMenuItem.Enabled = true;
                sendAFileToolStripMenuItem.Enabled     = true;
                rdpClient.SubscribeForKeys(new KeysSubscription(Keys.F, false, true, true), new EventHandler <SubscribedKeyPressEventArgs>(FullScreenHandler));
            }
            return(result);
        }
Example #4
0
 /// <summary>
 /// Initializes a new instance of the <see cref="LoginResponseArgs"/> class.
 /// </summary>
 /// <param name="state">The state.</param>
 public LoginResponseArgs(LoginResponseStateEnum state)
 {
     this.ResponseState = state;
 }