Ler DLL

3 respostas
E

Pessoal bom dia,

Existe uma aplicação em ASP que utiliza um DLL para cliptografia de dados.
Estou fazendo uma aplicação para interagir com este outra, e a empresa responsável pela aplicação em ASP me disponiviliza esta DLL para eu cliptografar meus dados no mesmo padrão deles, e sendo assim, interagir com os dados da outra aplicação.

O problema é que me enviaram a DLL e eu não consigo ler a mesma, como eu trabalho com este tipo de arquivo ?

Agradeço a atenção de todos.

[]
Eduardo Lima
[email removido]

3 Respostas

Pedrosa

Dicas sobre ASP vc acha aqui:

http://www.aspbrasil.com.br/conteudo/detalhesCompleta.aspx?codConteudo=3092&Secao=DICAS

Se vc for fazer isso via Java use JNI:

Entao voce deve executar as seguintes etapas:

1- Criar um projeto novo (com opçao de ser uma dll) em C++ usando, por
exemplo, o visual C++

2- Usar o Javah para gerar o cabecário da funcao nativa C++ originado
da declaracao do metodo nativo Java (public native String
Metodo(String) )

3- Adicionar o arquivo .h no projeto
Criar o arquivo .h

javah -jni -classpath \fabio\java\projetos\yy\ br.com.xx.Teste

4- Criar um arquivo fonte (.c ou .cpp) com implementacao da funcao
que vc necessita.

5- Seu projeto deve ser configurado para linkar com a lib JVM.lib e
com a lib da dll (NOME.dll). Observe
que para compilar com esta dll, voce tambem dever ter o arquivo .h.

6- Depois eh so compilar e linkar

/**
 * @author fabio.pedrosa
 *
 */
public class Teste {
	
	static{
		try {
			System.loadLibrary("xx");//nome da dll
		} catch (Exception e) {
		}
		
	} 
	
	public native int sum(int n1,int n2);
	
	public static String testeJNI(){
		try {
			Teste t = new Teste();
			String result = "teste com jni " + t.sum(10,5);
			return result;
	
		} catch (Exception e) {
			return e.getMessage().toString();
		}
	}
	public static void main(String[] args) {
		Teste t = new Teste();
		System.out.println("resultado " + t.testeJNI());
	}

}
E

Realmente desejo utilizar no JAVA.

Mas não entendi muito como devo fazer para utilizar esta DLL.
Tudo que sei é que ela é utilizada em uma aplicação ASP e me enviaram para eu usar como modelo para criptografar os dados do meu form para assim bater com os dados da outra aplicação.

[]s
Eduardo Lima
[email removido]

T

Se ela é usada em ASP provavelmente ela deve ser uma ActiveX DLL, não uma DLL normal.
Nesse caso é necessário usar a biblioteca Jacob (usar JNI diretamente não é trivial nesse caso.)

http://danadler.com/jacob/

Criado 3 de abril de 2006
Ultima resposta 3 de abr. de 2006
Respostas 3
Participantes 3