8 messages in net.java.dev.jna.users[jna-users] Problems finding native m...
FromSent OnAttachments
Felipe Armoni, felipe.armoniMay 18, 2009 6:11 am.bmp
Schneider JannMay 18, 2009 6:23 am 
Schneider JannMay 18, 2009 6:32 am 
Felipe Armoni, felipe.armoniMay 18, 2009 6:42 am 
Felipe Armoni, felipe.armoniMay 18, 2009 6:46 am 
Schneider JannMay 18, 2009 6:53 am 
Felipe Armoni, felipe.armoniMay 18, 2009 6:54 am 
Schneider JannMay 18, 2009 6:57 am 
Actions with this message:
Paste this link in email or IM:
Paste this link in email or IM:
Atom feed for this thread
Paste this URL into your reader:
Subject:[jna-users] Problems finding native methodsActions...
From:Felipe Armoni, felipe.armoni (farm@itautec.com)
Date:May 18, 2009 6:11:10 am
List:net.java.dev.jna.users
Attachments:

Hi,

I am new to jna and I am trying to access an unmanaged C++ dll that I made on
Visual Studio 2008.

The header file for this dll is:

#pragma once

#include "stdafx.h"

#include "LumiAPI.h"

#include "LumiTypes.h"

# define EXPORT __declspec (dllexport)

// Struct que contém os dados das imagens capturadas pelo Lumidigm.

struct LumidigmImageData

{

uint imageWidth; // Largura da imagem

uint imageHeight; // Altura da imagem

uint imageBPP; // Bits per pixel da imagem

uint imageDPI; // DPI da imagem

};

LUMI_DEVICE_HANDLE deviceHandle;

LumidigmImageData imgData;

extern EXPORT int init();

extern EXPORT char* capturaImagem();

I mapped the init and capturaImagem methods into the following interface:

package br.com.itautec.centralbiometrica.nativeInterfaces;

import com.sun.jna.Native;

import com.sun.jna.win32.StdCallLibrary;

public interface Lumidigm extends StdCallLibrary

{

public Lumidigm INSTANCE = (Lumidigm) Native.loadLibrary("C:/Itautec/Central
Biometrica/Java/InnovatricsEngine/lib/Lumidigm/LumidigmHelper.dll",
Lumidigm.class);

int init();

String capturaImagem();

}

After that I've tried to call the library from my main method using:

Lumidigm lumi = Lumidigm.INSTANCE;

lumi.init();

The problem is that whenever I run this program I get the following error
message:

Exception in thread "main" java.lang.UnsatisfiedLinkError: Error looking up
function 'capturaImagem': Não foi possível encontrar o procedimento
especificado.

at com.sun.jna.Function.<init>(Function.java:129)

at com.sun.jna.NativeLibrary.getFunction(NativeLibrary.java:250)

at com.sun.jna.Library$Handler.invoke(Library.java:191)

at $Proxy0.capturaImagem(Unknown Source)

at br.com.itautec.innovatricsEngine.Program.main(Program.java:32)

Can anyone help me?

Thank you,

Felipe Armoni

Analista de Sistemas.

| Sw Segurança