【发布时间】:2021-02-23 13:21:30
【问题描述】:
我设置pkcs11Interop库如下
Pkcs11Library = PkcsFactories.Pkcs11LibraryFactory.LoadPkcs11Library(PkcsFactories, pkcs11LibraryPath, AppType.MultiThreaded)
然后我立即使用包含 WaitForSlotEvent 的 WPF DispatcherTimer
Private Sub CardInsertedTimer_Tick(sender As Object, e As EventArgs)
Dim eventHappened As Boolean
Dim id As ULong
Pkcs11Library.WaitForSlotEvent(WaitType.NonBlocking, eventHappened, id)
If eventHappened Then
Debug.Print("CardInsertedEvent - Event - Event: " + eventHappened.ToString + " ID: " + id.ToString)
End If
End Sub
我希望这里没有惊喜。如果插槽(它是一个 USB 智能卡读卡器)被移除,那么我会收到一个 C_WaitForSlotEvent 返回的 CKR_DEVICE_ERROR。
- DispatcherTimer 是否适用于 WaitForSlotEvent?
- 我应该怎么做才能避免 C_WaitForSlotEvent CKR_DEVICE_ERROR?
- pkcs11Interop 是否处理插槽的添加和删除(即 智能卡读卡器)?
- 如果 pkcs11Interop 不处理添加和删除插槽正在轮询 唯一的方法以及最好的投票方式是什么?
【问题讨论】:
标签: vb.net pkcs11interop