2010-11-02 59 views
0

DELPHI 5用于保存DigitaPersona模板序列数据的样本 到DBASE4 DBF文件。所保存的模板的帮助 - 保存DigitaPersona模板文件。请参阅示例代码

procedure TFormEnroll.DPFPEnrollmentControl1Enroll(Sender: TObject; 
    lFingerMask: Integer; const pTemplate, pStatus: IDispatch); 
var 
    MMask : Integer; 
    Template : IDispatch; 
    MTempStr : OleVariant; 

    lByteArray: Variant; 
    lArrayPointer: Pointer; 
    lStr: AnsiString; 
    DPFPTemplate: TDPFPTemplate; 
    aRawData : Variant; 
begin 
    aRawData := pTemplate; 
    lStr := aRawData.Serialize; 
    MMask := lFingerMask; 
    if lStr = null then 
    StatusBar.Panels.Items[0].Text := 'The fingerprint TEMPLATE is empty! + Mask=' + IntToStr(MMask) 
    else 
    StatusBar.Panels.Items[0].Text := 'The fingerprint TEMPLATE has something! + Mask=' + IntToStr(MMask); 
    MMsg := lStr; 
    MLen := Length(MMsg); 
    EditSerialData.Text := MMsg; 
    MemoSerialData.Lines.Text := MMsg; 
    MemoSerialData2.Lines.Text := MMsg; 
    EditLenSerialData.Text := IntToStr(MLen); 
    EditFingerMask.Text := IntToStr(DPFPEnrollmentControl1.EnrolledFingersMask); 
    //Update database - Take to separate save button 
    DMForm.Finger.First; 
    if DMForm.Finger.State in [dsEdit, dsInsert] then 
    // do nothing 
    else 
    DMForm.Finger.Edit; 
    DMForm.FingerUSERNAME.Value := 'Testing '; 
    DMForm.Finger.Post; 
    DMForm.Finger.Edit; 
    DMForm.FingerUSERNAME.Value := 'Testing ' + IntToStr(DMForm.FingerFINGERID.Value); 
    DMForm.FingerFINGERTEMP.Value := MMsg; 
    DMForm.FingerEnrolledFingerMask.Value := IntToStr(DPFPEnrollmentControl1.EnrolledFingersMask); 
    DMForm.FingerFingerSerialData.Value := MMsg; 
    DMForm.Finger.Post; 
end; 

例STRING =“2 B ??????????????????????????????? ??????????????????????õ??????????????????????????? ???????? + ____ [?????????????????? V ?????????????? ?????????????????????????????????????????????????? 9 ??????????Ò?????????????????????????????????????? ???????????????????????????? | ????????????????????? ?????????????????????????????????????????????????? ????????????????????????????????Ĵ????????????????? ?????Ø???????????????????????????????????????????? ???????????? U·???????????????????????????????????? ?????????????????????????????????????????????????? ?????????????????????????????????????????????????? ?????????????????????????????????????????????#???? ?????????????????????????????????????????????????? ??? ?????????????????????????????????????????????????? ?????????????????????????????????????????????????? ?????????????????????????????”

这是我们期待的结果吗? 这是一个可行的模板? 您可以解释(aRawData:= pTemplate;)作为变量的'aRawData'与作为调度变量的'pTemplate;''的相互作用。 我在写道上吗?

回答

1

是的,这是指纹模板的二进制数据,用于验证指纹。

您可以将其保存在数据库或二进制文件的blob中,并加载它或bintohex并将其保存在文本文件中。

模板和原始数据之间的区别在于模板是下一次在阅读器中按下时用于验证手指的模板。你会看到,如果你打印出原始数据更大。

看起来像你在正确的轨道上,只是不用担心二进制数据。