这是一个非常具体的问题,可能会为我赢得风滚草徽章,但如果可以,请回答
我已经将 DigitalPersona sdk dll 作为类型库导入到 Delphi 中,并试图验证我作为序列化数据存储在数据库中的指纹,它的工作非常出色。注册似乎工作正常,但我无法将指纹中的二进制数据转换回 DPFPTemplate 对象。每次尝试使用 TDPFPTemplate 对象的 defaultinterface 属性时,我都会收到 OLEException。
我想知道的是 Digital Persona 希望您如何使用他们的 SDK 来重新创建指纹。他们的指示是这样说的:
1. *从指纹数据存储子系统中检索序列化的指纹模板数据。 2.通过调用Deserialize方法反序列化一个DPFPTemplate对象(VB第40页,C++ 第 83 页)。 3. 返回一个 DPFPTemplate 对象。
制作 DPFPTemplate 的所有方法似乎只包括使用指纹读取器本身。
这是一种行不通的方法
Result := CreateOleObject('DPFPShrX.DPFPTemplate.1') as IDPFPTemplate;
Result.Deserialize(string(AUserFinRecPtr.FingerBuffer));
这是另一个
DPFPTemplate := TDPFPTemplate.Create(nil);
DPFPTemplate.DefaultInterface.Deserialize(String(AUserFinREcPtr.FingerBuffer));