Конференция "WinAPI" » FTRAPI.dll ftrScanAPI.dll [D7]
 
  • belmol (16.12.08 12:14) [0]
    Добрый день. кто знаком с данными библиотеками? подскажите как добраться до их функций.. очень надо, перерыл все, нашел только на с++, но в нем непонимаю ничего. Если есть у кого ссылка или что то на пример использования функций конкретно этих библиотек. Заранее благодарен.
  • tesseract © (16.12.08 12:19) [1]
    Скажи откуда стырил возможно и вспомним что. А так заголовочные файлы от них переводи на delphi.
  • belmol (16.12.08 12:35) [2]
    это Futronic сканер отпечатка пальцев, управляющие библиотеки.
  • Сергей М. © (16.12.08 12:51) [3]

    > нашел только на с++, но в нем непонимаю ничего


    Кидай сюда заголовочный файл и сишный пример использования, если имеется.
    Посмотрим что там к чему, вряд ли это хоз-во сложно портировать в Делфи.
  • belmol (16.12.08 13:00) [4]
    Interactive application example

    // Application requires interaction with a user.
    if( FTRInitialize() != FTR_RETCODE_OK )
    return;

    // Use the specified sensor.
    if( FTRSetParam( FTR_PARAM_CB_FRAME_SOURCE, FSD_FUTRONIC_USB ) == FTR_RETCODE_OK ){

    // Get the frame dimensions.
    FTRGetParam( FTR_PARAM_IMAGE_WIDTH, &dwWidth );
    FTRGetParam( FTR_PARAM_IMAGE_HEIGHT, &dwHeight );
    FTRGetParam( FTR_PARAM_IMAGE_SIZE, &dwSize );

    pImage = malloc( dwSize ); // Reserve memory space for an image.

    // Optional. Set the maximum number of frames in a template. This call must precede
    // the FTRGetParam(FTR_PARAM_MAX_TEMPLATE_SIZE, … ) call.
    FTRSetParam( FTR_PARAM_MAX_MODELS, 3 );

    // Get the maximum template size in bytes.
    FTRGetParam( FTR_PARAM_MAX_TEMPLATE_SIZE, &dwTempSize );
    FTR_DATA Template;
    Template.pData = malloc( dwTempSize ); // Reserve memory for a template.

    // Establish the user interaction callback function.
    // Note, that the cbUserSuppliedFunc must be declared accordingly to the FTR_CB_STATE_CONTROL,
    // see details in the FTRAPI.h header file.
    FTRSetParam( FTR_PARAM_CB_CONTROL, cbUserSuppliedFunc );

    // Build a template for the verification purpose.
    FTR_USER_CTX myContext;
    FTREnroll( myContext, FTR_PURPOSE_ENROLL, &Template );

    // Verify if a user matches the specified template with the FAR = 0.05
    BOOL bIsVerified;
    FTRSetParam( FTR_PARAM_MAX_FAR_REQUESTED, 107374182 ); // 107374182 / (2**31 - 1) = 0.05
    if( FTRVerify( myContext, &Template, &bIsVerified, NULL ) == FTR_RETCODE_OK ){
    if( bIsVerified ){
    // Proceed a match!
    }
    else{
    // Match was not detected.
    }
    }
    }

    FTRTerminate();
  • belmol (16.12.08 13:01) [5]
    #if defined(__WIN32__)
    #pragma pack(pop)
    #endif

    FTR_API_PREFIX FTRHANDLE FTR_API ftrScanOpenDevice();
    FTRHANDLE FTR_API ftrScanOpenDeviceOnInterface( int nInterface );
    FTR_API_PREFIX void FTR_API ftrScanCloseDevice( FTRHANDLE ftrHandle );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanSetOptions( FTRHANDLE ftrHandle, FTR_DWORD dwMask, FTR_DWORD dwFlags );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetOptions( FTRHANDLE ftrHandle, FTR_PDWORD lpdwFlags );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetDeviceInfo( FTRHANDLE ftrHandle, PFTRSCAN_DEVICE_INFO pDeviceInfo );

    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetInterfaces( PFTRSCAN_INTERFACES_LIST pInterfaceList );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrSetBaseInterface( int nBaseInterface );
    FTR_API_PREFIX int FTR_API ftrGetBaseInterfaceNumber();
    FTR_API_PREFIX FTR_BOOL FTR_API ftrSetLoggingFacilityLevel( FTR_DWORD dwLogMask, FTR_DWORD dwLogLevel, char * lpFileName );

    FTR_API_PREFIX FTR_DWORD FTR_API ftrScanGetLastError();
    FTR_API_PREFIX void FTR_API ftrScanSetLastError( FTR_DWORD dwErrCode );

    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetVersion( FTRHANDLE ftrHandle, PFTRSCAN_VERSION_INFO pVersionInfo );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanIsScannerFeaturePresent( FTRHANDLE ftrHandle, int nScannerFeature, FTR_PBOOL pIsPresent );

    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetFakeReplicaInterval( double *pdblMinFakeReplicaValue, double *pdblMaxFakeReplicaValue );
    FTR_API_PREFIX void FTR_API ftrScanSetFakeReplicaInterval( double dblMinFakeReplicaValue, double dblMaxFakeReplicaValue );

    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetLFDParameters( PFTRSCAN_LFD_CONSTANTS pLFDParameters );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanSetLFDParameters( PFTRSCAN_LFD_CONSTANTS pLFDParameters );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetScanParameters( FTRHANDLE ftrHandle, FTR_DWORD dwParamCode, FTR_PVOID pOutBuffer );

    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetImageSize( FTRHANDLE ftrHandle, PFTRSCAN_IMAGE_SIZE pImageSize );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetImage( FTRHANDLE ftrHandle, int nDose, FTR_PVOID pBuffer );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetImage2( FTRHANDLE ftrHandle, int nDose, FTR_PVOID pBuffer );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetFuzzyImage( FTRHANDLE ftrHandle, FTR_PVOID pBuffer );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetBacklightImage( FTRHANDLE ftrHandle, FTR_PVOID pBuffer );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetDarkImage( FTRHANDLE ftrHandle, FTR_PVOID pBuffer );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetColourImage( FTRHANDLE ftrHandle, FTR_PVOID pDoubleSizeBuffer );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetSmallColourImage( FTRHANDLE ftrHandle, FTR_PVOID pSmallBuffer );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetColorDarkImage( FTRHANDLE ftrHandle, FTR_PVOID pDoubleSizeBuffer );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetImageByVariableDose( FTRHANDLE ftrHandle, int nVariableDose, FTR_PVOID pBuffer );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGet4in1Image( FTRHANDLE ftrHandle, FTR_PVOID pBuffer );

    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetPartOfImageSize( FTRHANDLE ftrHandle, PFTRSCAN_IMAGE_SIZE pPartOfImageSize);
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetPartOfImage( FTRHANDLE ftrHandle, int nDose, FTR_PVOID pBuffer );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetPartOfBacklightImage( FTRHANDLE ftrHandle, FTR_PVOID pBuffer );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetPartOfDarkImage( FTRHANDLE ftrHandle, FTR_PVOID pBuffer );

    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanIsFingerPresent( FTRHANDLE ftrHandle, PFTRSCAN_FRAME_PARAMETERS pFrameParameters );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetFrame( FTRHANDLE ftrHandle, FTR_PVOID pBuffer, PFTRSCAN_FRAME_PARAMETERS pFrameParameters );

    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanSave7Bytes( FTRHANDLE ftrHandle, FTR_PVOID pBuffer );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanRestore7Bytes( FTRHANDLE ftrHandle, FTR_PVOID pBuffer );

    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetExtMemorySize( FTRHANDLE ftrHandle, int *pnSize );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanSaveExtMemory( FTRHANDLE ftrHandle, FTR_PVOID pBuffer, int nOffset, int nCount );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanRestoreExtMemory( FTRHANDLE ftrHandle, FTR_PVOID pBuffer, int nOffset, int nCount );

    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetSerialNumber( FTRHANDLE ftrHandle, FTR_PVOID pBuffer );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanSaveSerialNumber( FTRHANDLE ftrHandle, FTR_PVOID pReserved );

    typedef FTR_BOOL (*PFTRCALIBRATEFNCB)( FTR_PVOID pContext, FTR_PVOID pParams );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanZeroCalibration( PFTRCALIBRATEFNCB pfnCallbackProc, FTR_PVOID pContext );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanZeroCalibration2( FTR_DWORD dwOptions, PFTRCALIBRATEFNCB pfnCallbackProc, FTR_PVOID pContext );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetCalibrationConstants( FTRHANDLE ftrHandle, FTR_PBYTE pbyIRConst, FTR_PBYTE pbyFuzzyConst );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanStoreCalibrationConstants( FTRHANDLE ftrHandle, FTR_BYTE byIRConst, FTR_BYTE byFuzzyConst, FTR_BOOL bBurnToFlash );

    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetFakeReplicaParameters( FTRHANDLE ftrHandle, PFTRSCAN_FAKE_REPLICA_PARAMETERS pFakeReplicaParams );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetFakeReplicaBuffer( FTRHANDLE ftrHandle, PFTRSCAN_FAKE_REPLICA_BUFFER pFakeReplicaBuffer );

    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanSetNewAuthorizationCode( FTRHANDLE ftrHandle, FTR_PVOID pSevenBytesAuthorizationCode );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanSaveSecret7Bytes( FTRHANDLE ftrHandle, FTR_PVOID pSevenBytesAuthorizationCode, FTR_PVOID pBuffer );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanRestoreSecret7Bytes( FTRHANDLE ftrHandle, FTR_PVOID pSevenBytesAuthorizationCode, FTR_PVOID pBuffer );

    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanSetDiodesStatus( FTRHANDLE ftrHandle, FTR_BYTE byGreenDiodeStatus, FTR_BYTE byRedDiodeStatus );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanGetDiodesStatus( FTRHANDLE ftrHandle, FTR_PBOOL pbIsGreenDiodeOn, FTR_PBOOL pbIsRedDiodeOn );

    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanSave7ControlBytes( FTRHANDLE ftrHandle, FTR_PVOID pBuffer, FTR_BOOL bBurnToFlash );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrScanRestore7ControlBytes( FTRHANDLE ftrHandle, FTR_PVOID pBuffer );

    FTR_API_PREFIX FTR_BOOL FTR_API ftrSweepGetSlice( FTRHANDLE ftrHandle, FTR_PVOID pBuffer );
    FTR_API_PREFIX FTR_BOOL FTR_API ftrSweepGetMultipleSlices( FTRHANDLE ftrHandle, int nSlices, FTR_PVOID pBuffer );

    #define FTR_BLACKFIN_MAX_WRITE_DATA_LEN 4096
    FTR_API_PREFIX FTR_BOOL FTR_API ftrBlackfinDataExchange( FTRHANDLE ftrHandle, FTR_PVOID pWriteBuffer, int nWriteBufferLength, FTR_PVOID pReadBuffer, int nReadBufferLength );

    #ifdef __cplusplus
    }
    #endif
  • belmol (16.12.08 13:05) [6]
    это кусок h-ки  если полностью кидать он здоровый...
  • tesseract © (16.12.08 13:11) [7]
    Этим попробуй :
    http://www.astonshell.ru/freeware/c2pas32/

    Заголовки переводит на 3+.
  • clickmaker © (16.12.08 13:14) [8]

    > FTRHANDLE FTR_API ftrScanOpenDeviceOnInterface( int nInterface
    > );

    const
     ftrScanAPI = 'ftrScanAPI.dll';

    function ftrScanOpenDeviceOnInterface(nInterface: integer): FTRHANDLE; stdcall; external ftrScanAPI;

    stdcall - это в случае, если там что-то типа #define FTR_API stdcall

    по аналогии все остальное переводишь
 
Конференция "WinAPI" » FTRAPI.dll ftrScanAPI.dll [D7]
Есть новые Нет новых   [134435   +34][b:0][p:0]