[ad_1]
digitalPersona が提供する文書に基づいて FMD を取得する方法を知りたいのですが、FMD はデータベースに保存するために使用されます。 指定されたコードに基づいて、FMD は正常に作成されたと示されていますが、保存されません。 ドキュメントには、FMD は一時的にメモリに保存され、プログラムを終了すると削除されると記載されています。 そこで、その FMD を使用して永続的に保存することにしたので、それを取得する方法を知る必要があります。
C#
private void OnCaptured(CaptureResult captureResult) { try { // Check capture quality and throw an error if bad. if (!_sender.CheckCaptureResult(captureResult)) return; count++; DataResult<Fmd> resultConversion = FeatureExtraction.CreateFmdFromFid(captureResult.Data, Constants.Formats.Fmd.ANSI); SendMessage(Action.SendMessage, "A finger was captured. \r\nCount: " + (count)); if (resultConversion.ResultCode != Constants.ResultCode.DP_SUCCESS) { _sender.Reset = true; throw new Exception(resultConversion.ResultCode.ToString()); } preenrollmentFmds.Add(resultConversion.Data); if (count >= 4) { DataResult<Fmd> resultEnrollment = DPUruNet.Enrollment.CreateEnrollmentFmd(Constants.Formats.Fmd.ANSI, preenrollmentFmds); if (resultEnrollment.ResultCode == Constants.ResultCode.DP_SUCCESS) { SendMessage(Action.SendMessage, "An enrollment FMD was successfully created."); SendMessage(Action.SendMessage, "Place a finger on the reader."); preenrollmentFmds.Clear(); count = 0; return; } else if (resultEnrollment.ResultCode == Constants.ResultCode.DP_ENROLLMENT_INVALID_SET) { SendMessage(Action.SendMessage, "Enrollment was unsuccessful. Please try again."); SendMessage(Action.SendMessage, "Place a finger on the reader."); preenrollmentFmds.Clear(); count = 0; return; } } SendMessage(Action.SendMessage, "Now place the same finger on the reader."); } catch (Exception ex) { // Send error message, then close form SendMessage(Action.SendMessage, "Error: " + ex.Message); } }
私が試したこと:
デジタル ペルソナから提供された SDK を見つけ、提供されたドキュメントを読みました。確認しましたが、まだわかりません。
解決策 2
必要なのは、結果の登録 fmd を xmlserialized して db に保存することです。これは取得時に逆シリアル化されますが、セキュリティの問題を考慮してデータをハッシュするか、ソルトを追加することさえできます
Fmd.serializedXml(fmd);
回収時
Fmd.DeserializedXml(fmd);
[ad_2]
コメント