Griaule Biometrics

Home » Knowledge Base » Troubleshooting » Fingerprint SDK » Articles

SYMPTOMS

  • ActiveX incompatibility in machines with DEP (data execution protection) enable
  • Unable to register ActiveX.dll ( regsvr32 GrFingerX.dll)
  • Error message: "Attempted to read or write protected memory. This is often an indication that other memory is corrupt." or some type of "Access Violation".

SOLUTION:

SYMPTOMS

  • Error message when you drag and drop the ActiveX component to a form in Visual Studio 2005 shows up: "Failed to import the activex control. Please ensure it is properly registered."

SOLUTION

  1. Download GrFinger ActiveX 1.0.2 http://www.griaule.com/public_download/GrFingerX_1_0_2.zip
  2. If Visual Studio is opened, close it;
  3. Replace GrFingerX.dll for the version 1.0.2 downloaded;
  4. Check if the ActiveX GrFinger is registered correctly (regsvr32 GrFingerX.dll);
  5. Open the project in the Visual Studio again;
  6. Check if the component is imported and active on the "Toolbox";
  7. If you are using VS 2005, before drag and drop the component "GrFingerXCtrl Class" to the form, add a reference to the OLE Automation in your project:
    ( This step is necessary, because VS2005 does not know how to resolve the dependences about the COM stdole. And it does not know to compile the assembly wrapper AxGrFingerXLib.dll.
    - In "Solution Explorer", click with the right button on your project;
    - Click "Add Reference";
    - Select the option "COM";
    - Select the component "OLE Automation";
    - Click "OK";

  • Drag and drop the component "GrFingerXCtrl Class" to the Form.
  • APPLIES TO

    • Fingerprint SDK 2007

    SYMPTOMS:

    • When the first form loads, the fingerprint reader works well. As the second form is loaded the reader does not work anymore;
    • An error message with the code -1 (GR_ERROR_INITIALIZE_FAIL) shows up;

    CAUSE:

    • The only way to get a GR_ERROR_INITIALIZE_FAIL is to call initialize when GrFinger it's already initialized.

    SOLUTION:

    1. The ActiveX class is totally static, if you create 2 instances of it, you don't need to call initialize on both of them.
    2. We suggest you to have a global GrFingerXCtrl, initialized just once, which probably will fix this problem.

    APPLIES TO:

    • Fingerprint SDK 2007, GrFinger 4.2

    SYMPTOMS:

    • When you try to run Fingerprint SDK Java library from an Applet, you get the message "java.lang.SecurityException: Unable to create temporary file" in the java console;

    CAUSE:

    • You have granted no rights to the applet. You have to sign it.

    SOLUTION:

    1. You have to sign the applet to grant permissions for copying files and loading libraries.
    2. There are 2 ways to get the security keys/certificates:
      • You can buy one from a certification company. This way, your software will be automatically trusted by third-parties.
      • You can create your own certificate (self-signed certificate). This way, anyone who tries to use your software will be prompted something like "This software is signed by an unknown source".
    3. Your end-used surely won't like if you use a self-signed certificate, as the warning messages will make your software look like a virus or something of that kind.

      But, for the first tests, using self-signed certificates is much easier and cheaper: You can create your own certificate using a jdk tool called keytool.

    4. To create the keys/certificate just execute this:
      >> keytool -genkey -alias MyKeyName
    5. It will ask your name, company, city, etc, and, of course, a password.
    6. After you have created a key, you just have to use it to sign your jar file:
      >> jarsigner MyJarFile.jar MyKeyName
    7. It will prompt you for the password, and sign the jar file.

    APPLIES TO:

    • Fingerprint SDK Java 2007, GrFinger 4.5

    Every time the Fingerprint SDK library is initialized, it searches for a license file in two locations in the file system. A valid license file must be placed in one of these locations or the library will not work.

    The first location is the application's folder. This is the recommended location where to copy the license file when installing a Fingerprint SDK based application.

    The second location is recommended only for developers and provides a system and user independent license location: it's the <COMMON APPLICATION DATA>\Griaule folder.

    The path <COMMON APPLICATION DATA> is the file system folder containing application data for all users. In Windows Vista, XP, 2000 and 2003 operating systems, the environment variable APPDATA contains this path.

    For the English version of the Windows operating system, the table below shows the most likely locations of the <COMMON APPLICATION DATA>\Griaule folder. Other Windows versions or non-English Windows may have slightly different paths. As an utmost option, create the folder if it doesn't exist.

    Windows version Folder
    Windows Vista C:\ProgramData\Griaule\
    Windows XP
    Windows 2000

    Windows 2003

    C:\Documents and Settings\All Users\Application Data\Griaule\

    Troubleshooting

    If even after placing the license you have purchased, the unregistered version label or the splash screen still shows up, it means the SDK library is finding the trial license in your system. Try to locate the file named GrfingerLicenseAgreementtext.txt using the search of the operating system. Then replace this file with the one you downloaded from Griaule's site.