/// <summary></summary>
        /// <param name=""></param>
        private void ExecutePasswordToKey(BackgroundMessage UserInterfaceMessage)
        {
            byte[] abKey;

            if ((UserInterfaceMessage.abKeyOrPassword == null) || (UserInterfaceMessage.abSignatureOrSalt == null))
            {
                throw new ArgumentException("Argument in BackgroundThread.ExecutePasswordToKey must not be null.");
            }
            else
            {
                Console.WriteLine("ExecutePasswordToKey start " + DateTime.Now.ToString("mm:ss fff"));
                abKey = _Cryptography.PasswordToAesKey(_Cryptography.DecryptAes(UserInterfaceMessage.abKeyOrPassword, _abAesKey), UserInterfaceMessage.abSignatureOrSalt);
                Console.WriteLine("ExecutePasswordToKey end " + DateTime.Now.ToString("mm:ss fff"));
                UserInterfaceMessage.abKeyOrPassword = _Cryptography.EncryptAes(abKey, _abAesKey);
            }
            _quReturn.Enqueue(UserInterfaceMessage);
        }
 /// <summary></summary>
 /// <param name=""></param>
 public bool Start(BackgroundMessage UserInterfaceMessage)
 {
     _quCommand.Enqueue(UserInterfaceMessage);
     return(Start());
 }
 /// <summary></summary>
 /// <param name=""></param>
 private void ExecuteXYZ(BackgroundMessage UserInterfaceMessage)
 {
 }
 /// <summary></summary>
 /// <param name=""></param>
 public void Enqueue(BackgroundMessage UserInterfaceMessage)
 {
     _quCommand.Enqueue(UserInterfaceMessage);
 }