Obrigado Rubem. Vou fazer o teste agora mesmo, espero retornar com boas notícias.
2008/4/10 Rubem Nascimento da Rocha <[EMAIL PROTECTED]>: > > > Nunca vi essa DLL e nunca trabalhei com leitores biométricos, mas pela > experiência que adquiri traduzindo chamadas de DLLs do VB pra Delphi, tente > a seguinte declaração: > > function SF_Identify(var EnrollTemplate: DWORD; Count: DWORD; var Match: > DWORD; > SecurityLevel: DWORD; bCoreDetect: BOOL; Time: DWORD): DWORD; stdcall; > external 'SFR300.dll'; > > Depois, poste suas impressões (positivas ou negativas) na lista! > Sds. > > ________________________________ > > To: delphi-br@yahoogrupos.com.br <delphi-br%40yahoogrupos.com.br> > From: [EMAIL PROTECTED] <diogo.cunhajf%40gmail.com> > Date: Thu, 10 Apr 2008 14:54:27 -0300 > Subject: [delphi-br] Traduzindo de VB para Delphi > > > Amigos boa tarde. > > Estou com o seguinte problema. > Estou desenvolvendo um software para comunicação com um leitor biométrico > de > marca suprema. A maioria das funções já esta implementada e funcionando. > Porém a função mais importante para a minhã aplicação que a função de > verificação não esta funcionando a contento. > > Em contato com o suporte a integradores do representante do leitor no > Brasil, consegui apenas exemplos em VB e C++. > > Estou me baseando na declaração da função em VB: > > "Private Declare Function SF_Identify Lib "SFR300.dll" (ByRef > EnrollTemplate > As Long, ByVal Count As Long, ByRef Match As Long, ByVal SecurityLevel As > Long, ByVal bCoreDetect As Long, ByVal Time As Long) As Long" > > que é chamada da seguinte forma: > SF_Identify(Buffer(0), 10, Match, 3, 0, 0), onde o array "buffer" contêm > os > endereços na memória onde estão armazenadas as digitais. > > e a respectiva declaração em Delphi (não sei se está certa): > "Function SF_Identify(Var EnrollTemplate: Array of PByteArray; Count: > Longint;Var Match: integer; SecurityLevel: Longint; bCoreDetect: Longint; > Time: Longint): Longint; stdcall; external 'SFR300.dll';" > > e é chamada da seguinte forma: > SF_Identify(Buffer[0], 10, Pos, 4, 0, 0);, o array "buffer" tem a mesma a > mesma que função que acima. > > O problema é que no Delphi a função nunca dá o retorno esperado, neste > caso, > retorna sempre 0(zero) o que significa falha na verificação. > > Alguém saberia me dizer se estou declarando a função no delphi de forma > errada ou passando algum parâmetro de forma incorreta. > -- > "Não te esqueças de que o arado, dilacerando o solo, acaba igualmente > desmantelado e ferido, entretanto, desse choque de forças surge o pão que > te > supre a mesa." > > [As partes desta mensagem que não continham texto foram removidas] > > __________________________________________________________ > Receba GRÁTIS as mensagens do Messenger no seu celular quando você estiver > offline. Conheça o MSN Mobile! > http://mobile.live.com/signup/signup2.aspx?lc=pt-br > > -- "Não te esqueças de que o arado, dilacerando o solo, acaba igualmente desmantelado e ferido, entretanto, desse choque de forças surge o pão que te supre a mesa." [As partes desta mensagem que não continham texto foram removidas]