Esempio n. 1
0
        public void SetUsbKey()
        {
retry:
            UsbKey _usbKeyDrive = new UsbKey();
            UsbKeyDriveMessages  _messages = new UsbKeyDriveMessages();
            UsbKeyDriveErrorEnum _result;
            string _key = _usbKeyDrive.CreateKey(out _result);

            switch (_result)
            {
            case UsbKeyDriveErrorEnum.NoUsbKeyDrives:

retry2:
                FormUsbKeyDrive _f = new FormUsbKeyDrive();
                DialogResult _dr = _f.ShowDialog();
                if (_dr == DialogResult.OK)
                {
                    if (_f.CreateUsbKeyDrive)
                    {
                        _usbKeyDrive.CreateUSBKeyContainer(out _result);
                        switch (_result)
                        {
                        case UsbKeyDriveErrorEnum.NoUsbDrives:
                        case UsbKeyDriveErrorEnum.MultipleUsbKeyDrives:
                        case UsbKeyDriveErrorEnum.ExceptionCreatingKeyDrive:
                            DialogResult _mb = MessageBox.Show(_mainform, _messages.GetMessage(_result), "USBKey", MessageBoxButtons.OKCancel);
                            if (_mb == DialogResult.OK)
                            {
                                goto retry2;
                            }
                            return;
                        }
                    }
                    goto retry;
                }
                else
                {
                    UsbKeyId = null;
                    return;
                }

            case UsbKeyDriveErrorEnum.MultipleUsbKeyDrives:
            case UsbKeyDriveErrorEnum.ExceptionWritingKeyFile:
                MessageBox.Show(_messages.GetMessage(_result));
                UsbKeyId = null;

                break;

            case UsbKeyDriveErrorEnum.Ok:
                UsbKeyId = _key;

                break;
            }
            ShowKey();
        }