Enregistrement dans ProgrammeFiles
Bonjour à tous,
voila j'ai crée une application qui est installer sur le disque dur de l'ordinateur dans programme files avec un logiciel extérieur. Dans mon application, j'ai un système de mise a jour automatique qui met a jour mon fichier DDL. Pour cela il doit le récrire dans le fichier programme files dans le quel il se trouve.
pour cela j'utilise ce code
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 41 42 43 44 45 46 47 48 49 50
|
void EnregistrementNumeroBase(int numeroRecette) throws IOException{
info.setText("Enregistre le numéro de la dernière recette ...");
EnregistrementRecette("</bb>\n", true);
try{
//creation du flux
DataOutputStream out=new DataOutputStream(new FileOutputStream("MiseAJour.dll"));
//données à ecrire
try{
//ecriture des données
out.writeInt(numeroRecette);
//vider le buffer
out.flush();
System.out.println(numeroRecette);
}
finally{
try{
//fermer le flux
out.close();
}catch(IOException e){
JOptionPane.showMessageDialog(null, "L'erreur #107 est survenu, relancez le logiciel ou contactez-nous.",
"avertissement",
JOptionPane.WARNING_MESSAGE);
System.out.println(e);
}
info.setText("Terminer ...");
frame.dispose();
if(numeroRecette > numeroRecetteC){
fermer = true;
JOptionPane.showMessageDialog(null, "Mise à jour des recettes effectuée.\n Redémarrer le logiciel pour les utiliser.",
"Bravo",
JOptionPane.INFORMATION_MESSAGE);
}else{
fermer = true;
}
}
}
catch(IOException e){
JOptionPane.showMessageDialog(null, "L'erreur #108 est survenu, relancez le logiciel ou contactez-nous.",
"avertissement",
JOptionPane.WARNING_MESSAGE);
System.out.println(e);
}
} |
Mais le problème c'est que sous Windows XP cela marche bien il se récrit bien mais sous Windows vista il ne veut plus. Comment faire pour que le logiciel est le droit de récrire dans le dossier du programme files?
cela est du en sorte par la protection de vista, mais comment faire pour que l'utilisateur si il la pas désactivé, que cela marche quand même?
merci d'avance
jerem721