Создание виртуальной смарт-карты - элемент не найден. (Исключение из HRESULT: 0x80070490)

У меня проблема с созданием виртуальной смарт-карты. RequestVirtualSmartCardCreationAsync() бросает странное исключение. Я прилагаю фрагмент кода.

public async void ScenarioCreateTpmVirtualSmartCard()
    {
        IBuffer adminKey = CryptographicBuffer.CreateFromByteArray(
        new byte[] {
             0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
             0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
             0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08
        });
        SmartCardPinPolicy pinPolicy = new SmartCardPinPolicy()
        {
            MinLength = 8,
            MaxLength = 127,
            LowercaseLetters = SmartCardPinCharacterPolicyOption.Allow,
            UppercaseLetters = SmartCardPinCharacterPolicyOption.Allow,
            Digits = SmartCardPinCharacterPolicyOption.Allow,
            SpecialCharacters = SmartCardPinCharacterPolicyOption.Allow
        };
        SmartCardProvisioning cardProvisioning = await SmartCardProvisioning.RequestVirtualSmartCardCreationAsync(
        "Contoso Virtual Smart Card", adminKey, pinPolicy, Guid.NewGuid());
        if (cardProvisioning == null)
            return;
    }

Проблема в том, что когда я запускаю этот метод, я получаю System.Exception

Элемент не найден. (Исключение из HResult:0x80070490)

Я использую VS 2017, и я запускаю этот пример на Windows 10. Любая помощь будет очень признателен...

1 ответ

Была эта проблема, когда не вызывалась в основном потоке пользовательского интерфейса. Убедитесь, что ваш звонок RequestVirtualSmartCardCreationAsync выполняется либо на уровне нажатия кнопки на странице, либо с помощью одной из различных форм BeginInvokeOnMainThread или InvokeOnMainThreadAsync.

Другие вопросы по тегам