[JNI] Ouverture connexion internet
salut,
Je développe un programme dans lequel j'aurais besoin de lancer une connexion internet afin de pouvoir ensuite me connecter par socket sur un PC distant.
En fait j'ai besoin de faire de manière automatique connexion-->envoi de données-->déconnexion environ tout les 10min
J'ai vu sur le net qu'il fallait utiliser JNI pour faire appel à l'api windows wininet.
Le problème c'est que je n'arrive pas à faire marcher tout ça.
J'ai bien réussi à écrire ma classe java, et à créer une dll mais j'ai plein d'erreur à l'exécution. Je pense que le problème vient de mon code C (je poste aussi un message sur le forum C), mais si quelqu'un avait déjà fait ça et pouvait m'aider ça me rendrait bien service...
pour info :
mon code java :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
| class ConnexionInternet {
public native void connecter();
static {
System.loadLibrary("ConInternetJni");
}
public static void main(String[] args) {
ConnexionInternet ci = new ConnexionInternet();
ci.connecter();
}
}
mon code C :
#include <jni.h>
#include <stdio.h>
#include "ConnexionInternet.h"
#include <windows.h>
#include <wininet.h>
JNIEXPORT void JNICALL
Java_ConnexionInternet_connecter(JNIEnv *env, jobject obj)
{
HANDLE lib;
FARPROC func;
long hINet;
//HINTERNET hINet, hFile;
lib = LoadLibrary("wininet.dll");
if (lib==NULL)
return;
//func = GetProcAddress(lib, "InternetGetConnectedState");
func = GetProcAddress(lib, "InternetOpen");
hINet = (*func) ("Test", INTERNET_OPEN_TYPE_PRECONFIG, NULL, NULL, 0 );
return;
} |
A l'exécution j'obtiens le message suivant :
An unexpected exception has been detected in native code outside the VM.
Unexpected Signal : EXCEPTION_ACCESS_VIOLATION (0xc0000005) occurred at PC=0x0
Function=[Unknown.]
merci d'avance
Isabelle
Re: ouverture connexion internet
Citation:
Envoyé par nebka
An unexpected exception has been detected in native code outside the VM.
Vu que c'est outside the VM c'est pas ici que tu auras beaucoup de reponses.
Essaye aussi sur le forum windows, parce que vu le message d'erreur(Unexpected Signal : EXCEPTION_ACCESS_VIOLATION (0xc0000005) occurred at PC=0x0), si c'est pas une erreur d'adressage, c'est peut etre un probleme de droit d'acces.
Bonne chance.